【问题标题】:Azure Graph API Call get only application groupsAzure Graph API 调用仅获取应用程序组
【发布时间】:2018-07-09 10:11:37
【问题描述】:

I have azure AD with 3 groups

我执行 api 调用来检索它

  1. 登录:https://login.microsoftonline.com/${tenantID}/oauth2/token
  2. 获取群组:https://graph.microsoft.com/v1.0/groups
  3. 获取用户:https://graph.microsoft.com/v1.0/groups/${groupID}/members

没关系,我在里面收到 3 个组和用户 但现在我只需要分配给应用程序的组 Like this

我在 graph api 中找不到任何过滤它的方法。 如果有人知道怎么做,请帮忙

【问题讨论】:

标签: azure azure-active-directory microsoft-graph-api


【解决方案1】:

这样解决这个问题:

  1. 像以前一样获取所有组
  2. 获取分配给应用程序 graph.microsoft.com/beta/servicePrincipals/${applicationId}/appRoleAssignments 的组和用户

回应:

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#appRoleAssignments",
    "value": [
        {
            "id": "tV-E7eUeFkmIemkoWcUgTkrT54btaddPtiLX96wVx0g",
            "creationTimestamp": "2018-07-06T10:43:32.548348Z",
            "principalDisplayName": "Pasha Kostohrys",
            "principalId": "${userID}",
            "principalType": "User",
            "resourceDisplayName": "azure-group-sync",
            "resourceId": "${applicationId}"
        },
        {
            "id": "ZRCxfjNVlUqrjp9Y3wuLJz6beU58dtNOvr41VsKwADo",
            "creationTimestamp": null,
            "principalDisplayName": "ops",
            "principalId": "${groupID}",
            "principalType": "Group",
            "resourceDisplayName": "azure-group-sync",
            "resourceId": "${applicationId}"
        }
    ] }
  1. 只过滤不在分配列表中的组

【讨论】:

  • 我认为你可以使用 beta/users/{id | userPrincipalName}/appRoleAssignments 列出了用户有权访问的所有应用程序。但这并不能过滤特定的群体。我一直在寻找这样的东西。由于文档一直在更新,而且 MS 正在从其他 API 迁移,这一直很艰难。文档:docs.microsoft.com/en-us/graph/api/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多