Azure AD JWT身份验证 - 缺少声明

时间:2017-04-13 09:15:49

标签: c# azure jwt azure-active-directory claims-based-identity

我试图从Azure AD获取用户组。 我用这些简单的代码行获得了一个令牌:

                if (this.user == null)
                    user = await AuthenticationManager.DefaultManager.CurrentClient.LoginAsync(this, MobileServiceAuthenticationProvider.WindowsAzureActiveDirectory);
                if (user != null)
                {
                    System.Diagnostics.Debug.WriteLine("Token = " + user.MobileServiceAuthenticationToken);
                }

当我将令牌粘贴到本网站上的JWT调试器中时: https://jwt.io/我得到一些信息(stable_sid,sid,sub,idp,   ver,iss,aud,exp,nbf)但我似乎无法让这些群体声称在其中。

我在Azured AD中添加了读取Microsoft图形和Azure活动目录组所需的权限,但它没有更改令牌中的任何内容。

获取用户组我缺少什么?

提前谢谢。

编辑:评论者指出,我忘了提到我将清单修改为" groupMembershipClaims":" SecurityGroup",我也试过" All"但仍然没有索赔。

1 个答案:

答案 0 :(得分:1)

好的,所以这里实际上没有问题。

我们应该使用身份验证令牌来访问用户组,以便调用Microsoft Graph API,这样我们就可以访问租户中的组和用户。

https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-graph-api-quickstart