![](/img/trans.png)
[英]AADB2C Custom Policy - Local and Social Account Sign policy with split email verification and sign up
[英]Look up user in AAD based on AADB2C attribute value
如果我在 Aure AD B2C 中有一個基於 Azure AD(企業)標識創建的用戶(如此處所述: https : //docs.microsoft.com/en-us/azure/active-directory-b2c/active- directory-b2c-setup-aad-custom ),是否有一個屬性存儲在 AADB2C 中,允許我在 AAD 中查找(使用 Graph API 或類似的)用戶對象? 我看到在 AADB2C 屬性中,有userPrincipalName和issuerUserId,但如果這兩個屬性中的任何一個與 AAD 中存儲的任何值匹配,我就不清楚。
謝謝!
馬丁
對於外部帳戶,將外部頒發者(即Azure AD)和外部用戶標識符(即Azure AD 用戶的對象標識符)寫入Azure AD B2C 目錄中用戶對象的“userIdentities”屬性中,其中“issuerUserId”屬性包含外部用戶標識符的 Base64 編碼:
{
"userIdentities": [
{
"issuer": "contoso.com",
"issuerUserId": "Mjk2NzdlNTAtY2MwZS00MmU5LWJhNWMtZjFmMDdkZTUwMDhm"
}
]
}
要通過外部帳戶查找用戶對象,您可以調用以下 Graph API 操作,其中“x/issuerUserId”值設置為外部用戶標識符的十六進制編碼:
GET https://graph.windows.net/myorganization/users?$filter=userIdentities/any(x:x/issuer eq 'contoso.com' and x/issuerUserId eq X'32393637376535302d636330652d343265392d626135632d663166303764653530303866')
更新:
來自外部身份提供者的 issuerUserId 應該被視為字符串而不是十進制。 在上面的示例中,當您對“Mjk2NzdlNTAtY2MwZS00MmU5LWJhNWMtZjFmMDdkZTUwMDhm”進行 base 64 解碼時,它會返回一個 guid 29677e50-cc0e-42e9-ba5c-f1f07de5008f 在 facebook 的情況下, issuerUserId 將是一個數字,但仍應視為字符串。
下一步將是使用字符串到十六進制轉換器,然后在查詢中使用該值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.