我真的很想了解没有租户的身份服务器的配置以及它如何处理用户及其登录。请帮忙。
答案 0 :(得分:2)
引入了多租户以逻辑上分离数据(属于不同组织),尽管这些数据存储在同一Identity Server中,并且存储在同一数据库中。
假设您正在为一组公司处理身份,而公司B不应该知道公司A的存在。在这种情况下,您可以将A和B视为两个不同的租户。
关于用户和登录:
在WSO2中,默认承租人为carbon.super
,您也可以定义自己的承租人(即abc.com
,xyz.com
)。在IS(Identity Server)中,我们将用户存储在用户存储(LDAP,AD,JDBC)中。有一个主用户存储(在user-mgt.xml
文件中定义),您可以定义自己的辅助用户存储。
在租户business_users
(在任何租户中)中创建辅助用户存储(abc.com
)并在其中添加用户John
时,该用户john
仅在那个房客此外,该辅助用户存储business_users
在配置它的那个存储租户之外的其他任何租户中都不可见。
但是此PRIMARY
用户存储库(在user-mgt.xml
文件中定义的用户存储库)对所有租户可见。 但并非所有用户都与所有租户共享。意味着,您可以从xyz.com
租户中将用户John
添加到PRIMARY
用户存储中。您也可以再次从租户John
添加用户abc.com
。在整个服务器中,这些用户将被视为两个不同的用户。一个人的存在与另一个人无关,并且是未知的。 WSO2 IS服务器中这些用户的完全限定用户名将为John@xyz.com
和John@abc.com
。
因此,如果要登录到xyz.com
租户中创建的服务提供商,则只能使用该租户本身可见(或在其中定义)的用户登录。
P.S。如果希望所有租户的用户都能够登录到您的应用程序,则可以定义共享服务提供商(SaaS应用程序)。