Single sign on 如何使用SSO在两个应用程序之间共享数据?

Single sign on 如何使用SSO在两个应用程序之间共享数据?,single-sign-on,saml,data-sharing,Single Sign On,Saml,Data Sharing,这更像是一个哲学/架构问题,而不是“代码”问题 假设我们有两个应用程序(服务提供商)具有单点登录。显然,他们必须共享数据,主要是用户信息(用户名、电子邮件等)。这些数据由身份提供者管理,并在身份验证成功时“提供”给服务提供者(我猜是基本的) 我们还假设这两个应用程序都有自己的数据库,其中它们匹配从IDP检索到的每个用户,但每个数据库都有自己的信息(列),这些信息只属于它们关联的应用程序(不属于其他应用程序!)。但是(另一个但是),还有一些其他的字段都必须访问(除了用户名、电子邮件等)例如,第一个

这更像是一个哲学/架构问题,而不是“代码”问题

假设我们有两个应用程序(服务提供商)具有单点登录。显然,他们必须共享数据,主要是用户信息(用户名、电子邮件等)。这些数据由身份提供者管理,并在身份验证成功时“提供”给服务提供者(我猜是基本的)

我们还假设这两个应用程序都有自己的数据库,其中它们匹配从IDP检索到的每个用户,但每个数据库都有自己的信息(列),这些信息只属于它们关联的应用程序(不属于其他应用程序!)。但是(另一个但是),还有一些其他的字段都必须访问(除了用户名、电子邮件等)例如,第一个应用程序具有可用公司的列表,第二个应用程序在创建新用户以将该用户与可用公司关联时需要该信息。这些数据应该如何共享?这是创建API以在应用程序之间提供此类信息的最佳/正确方法吗?我主要谈论的是太大而无法通过断言发送的内容列表。


提前谢谢

SAML方法是使用NameID作为“主键”,将IDP中的用户映射到应用程序中的用户

e、 g.电子邮件可以作为应用程序1的NameID发送,UPN可以作为应用程序2的NameID发送。这些都将出现在断言中


获取信息。应用程序之间不是IDP的一部分(使用断言除外),因此这必须通过API完成。

谢谢您的回答!你的第三段正是我想讨论的主题。