我们有一个带有身份提供程序设置的ADB2C租户,可以通过Open ID Connect在另一个组织中的Okta设置。
我们有一个管理界面来添加用户。我看到GraphAPI有一个createUser,它使用带有Password和changePwdOnFirstUse设置的json。将直接成员添加到ADB2C很好。
我的问题是,如何从其他Okta添加用户 组织,以便当该用户登录到我的应用程序(并由Okta验证)时,可以登录到我的应用程序。
目前,从Okta进行身份验证后,我们看到“用户未找到错误”。
我想,我无法使用相同的createUser方法通过Graph API添加此用户,因为我们不应该管理该用户密码。
如何将另一个组织用户添加到ADB2C,这样就不会看到此“找不到用户”问题?
谢谢。
答案 0 :(得分:0)
使用Azure AD Graph API,您可以create an external account user,将 user 对象的 userIdentities 属性设置为 sub (根据)Okta的ID令牌声明:
{
"accountEnabled": false,
"displayName": "John Smith",
"mailNickname": "john.smith",
"otherMails": [
"john.smith@company.com"
],
"userIdentities": [
{
"issuer": "{okta-id-token-iss-claim-value}",
"issuerUserId": "{okta-id-token-sub-claim-value}"
}
],
"userPrincipalName": "{guid}@{your-tenant-name}.onmicrosoft.com"
}
其中 sub 要求Okta的ID令牌必须将 issuerUserId 设置为base64编码。