在使用过程中,我发现keycloak在获取外部身份提供商(Azure AD)的用户信息后,会自动在本地数据库中注册一个新用户。用户的用户名是否与外部身份提供商(Azure AD)的用户信息以某种方式保持一致?例如,新注册用户的用户名自动设置为外部身份提供商(Azure AD)的用户邮箱?
ps:keycloak 7.0.1 windows10
最佳答案
使用身份权限映射器。
对于电子邮件,映射器属于属性导入器类型。将用户属性 email 映射到 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress .
对于用户名,映射器的类型为“用户名模板导入器”。将用户属性 username 映射到 ${ATTRIBUTE. http://schemas.microsoft.com/2012/12/certificatecontext/field/subjectname }.
对于姓氏,映射器的类型为属性导入器。将用户属性 lastName 映射到 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname .
对于给定名称,映射器属于属性导入器类型。将用户属性firstName映射到http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname .
关于azure-active-directory - keycloak 如何设置来自外部身份提供商的用户信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58703940/