应用新的Azure AD策略后未显示声明

时间:2019-01-08 16:38:11

标签: c# azure powershell azure-active-directory

我想为与Azure AD(ADAL)连接的C#Web应用程序添加其他声明。

  1. 我尝试在PowerShell中(按{https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-claims-mapping#claims-mapping-policy-assignment)添加新策略,然后重新运行该应用程序。相同的声明显示出来(不多也不少)。

  2. 是否有添加管理员字段的方法。我没有在此列表中看到它(https://docs.microsoft.com/mt-mt/azure/active-directory/develop/active-directory-claims-mapping?view=azurermps-6.9.0

下面是我尝试过的PowerShell Cmdlet:

New-AzureADPolicy -Definition @('{"ClaimsMappingPolicy":{"Version":1,"IncludeBasicClaimSet":"true", "ClaimsSchema": [{"Source":"user","ID":"department","JwtClaimType":"role"},{"Source":"user","ID":"extensionattribute1","JwtClaimType":"userdata"}]}}') -DisplayName "CustomClaimsPolicy" -Type "ClaimsMappingPolicy"

Add-AzureADServicePrincipalPolicy -Id { Principal Object Id } -RefObjectId { Policy Id }

在C#中,我按如下所述声明:

var claims = User.Claims.Select(claim => new { claim.Type, claim.Value }).ToArray();

1 个答案:

答案 0 :(得分:0)

我可以从侧面再现您的问题,PowerShell可以正常工作,但是我检查了门户网站中的user attributes,它们不存在。似乎是错误(不确定,如果我做错了,请纠正我),您可以在Github中open an issue,记住该功能处于预览状态。

enter image description here

enter image description here

  

是否有添加管理员字段的方法。我没有在此列表中看到它

您似乎无法做到这一点,请参见以下已知问题:Email address not being passed and Manager ID not available to be mapped