使用_claim_sources检索组声明返回指定的api版本无效。该值必须与支持的版本完全匹配

时间:2018-06-28 14:49:41

标签: c# asp.net-core azure-active-directory openid-connect claims-based-identity

我想从Azure Active Directory检索登录用户的组声明。我已经在Azure Portal的应用程序清单中启用了组检索

"groupMembershipClaims": "All"

组数超出限制,我得到了以下声明:

_claim_names:   {"groups":"src1"}
_claim_sources: {"src1":{"endpoint":"https://graph.windows.net/12345678-0939-496d-b129-198edd916feb/users/{user-object-guid}/getMemberObjects"}}

但是,当我向声明中指定的端点发出POST请求时,我得到:

{
  "odata.error": {
  "code": "Request_DataContractVersionMissing",
  "message": {
    "lang": "en",
    "value": "The specified api-version is invalid. The value must exactly match a supported version."
    }
  }
}

如何正确要求团体索赔?我可以使用https://graph.microsoft.com/v1.0/me/getMemberObject,但它需要其他权限,以及声明中的其他人为何还要使用URI。

1 个答案:

答案 0 :(得分:1)

您应将version ?api-version=1.6附加到端点。请参阅完整的代码示例here