如果我们有两个身份服务器,SSO(身份验证)和授权将如何工作?

How SSO (authentication) and authorization will work if we have two Identity Servers?

如果我们有两个身份服务器,将使用哪些权限和角色进行授权和身份验证?

示例: A​​BC 产品 正在使用 Keycloak 身份服务器,它有自己的用户、用户角色、用户组和权限等。

现在,另一家公司想要使用相同的产品,而这家公司有自己的身份服务器。现在,我们必须将此 ID 服务器配置为产品 ID 服务器。

  1. SSO 在这里如何工作?
  2. 产品将使用自己的角色和权限,还是使用新配置的 ID Server 用户角色和权限?
  3. 如何维护用户?在两个身份服务器中都会有相同的用户吗?

我对keycloak不熟悉,所以我只写一般的东西。

How SSO will work here?

我认为两台服务器都可以用作身份服务器。例如,需要将元数据上传到服务提供商(应用程序,您要登录)才能使用 SAML。您可以让用户通过上传元数据登录到某些 SaaS 应用程序,然后在 Idp 服务器和服务提供商服务器之间创建联合。

Product will use its own Roles and Permissions or It will use newly configured ID Server user Roles and Permissions?

我猜第一个是正确的。

How the Users will be maintained? in both Identity server will have same Users?

如果两个身份服务器都使用 LDAP 或 AD,您应该同步两个用户。或者,最好将他们合并成一个新的组织。

编辑

这个link说明如何将一个AD服务器同步到另一个。

如果可能的话,应该将密钥斗篷服务器配置为信任其他身份服务器作为外部身份提供者。登录到 keycloak 的用户可以选择通过身份服务器登录。这与您通过 Google.

登录 SO 时完全相同