Azure active directory &引用;未能授权呼叫者,呼叫者不是';t设备所有者或其中一个管理员角色。”;微软图形

Azure active directory &引用;未能授权呼叫者,呼叫者不是';t设备所有者或其中一个管理员角色。”;微软图形,azure-active-directory,microsoft-graph-api,microsoft-graph-teams,intune,Azure Active Directory,Microsoft Graph Api,Microsoft Graph Teams,Intune,似乎无法让GraphAPI从PowerShell中查询Bitlocker恢复密钥。使用Azure广告应用程序注册 Grant_Type = "client_credentials" Scope = "https://graph.microsoft.com/.default" client_Id = $ApplicationID Client_Secret = $AccessSecret } $headr = @{ Auth

似乎无法让GraphAPI从PowerShell中查询Bitlocker恢复密钥。使用Azure广告应用程序注册

Grant_Type    = "client_credentials"
Scope         = "https://graph.microsoft.com/.default"
client_Id     = $ApplicationID
Client_Secret = $AccessSecret
} 

$headr = @{
Authorization = "Bearer $($token)"
'ocp-client-name' = ""
'ocp-client-version' = "1.2"
}

$ConnectGraph = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$TenatDomainName/oauth2/v2.0/token" `
-Method POST -Body $Body

$token = $ConnectGraph.access_token

$GrapGroupUrl = 'https://graph.microsoft.com/beta/bitlocker/recoveryKeys'
(Invoke-RestMethod -Headers $headr -Uri $GrapGroupUrl -Method Get)
错误:

  "error": {
    "code": "UnknownError",
    "message": "{\"odata.error\":{\"Code\":\"authorization_error\",\"Message\":{\"Lang\":\"en\",\"Value\":\"Failed to authorize caller, the caller wasn't owner of the device 
or one of the admin roles.\"},\"Values\":[{\"Item\":\"subCode\",\"Value\":\"error_authorization_request_denied\"},{\"Item\":\"requestId\",\"Value\":\"xxxxxxxxxx\"},{\"Item\":\"time\",\"Value\":\"2020-11-19T04:43:13.6957327Z\"}]}}",
    "innerError": {
      "date": "2020-11-19T04:43:13",
      "request-id": "xxxxxxxxx",
      "client-request-id": "xxxxxx"
    }
  }
}```

对于此问题,错误是由不正确的授权类型(授权流)引起的。正如我们所看到的,该图形api需要委托的权限
BitLocker.ReadBasic.All,BitLocker.Read.All
,它不支持“应用程序”权限。

因此,我们不能使用客户端凭据流来获取访问令牌,我们需要使用流来实现这一点。请参考下面截图中我的测试。

运行该命令后,我们可以看到结果不显示错误消息。

对于此问题,错误是由不正确的授权类型(授权流)引起的。正如我们所看到的,该图形api需要委托的权限
BitLocker.ReadBasic.All,BitLocker.Read.All
,它不支持“应用程序”权限。

因此,我们不能使用客户端凭据流来获取访问令牌,我们需要使用流来实现这一点。请参考下面截图中我的测试。

运行该命令后,我们可以看到结果不显示错误消息。

您好,请参考我在下面提供的解决方案。如果这有助于解决您的问题,请将其作为答案(单击“我的答案”旁边的复选标记,将其从灰色变为填充)。提前感谢~如果仍然有任何问题,请让我知道。嗨,拉尔,有关于这个问题的更新吗?你对我的评论投赞成票了吗?我的意思是点击我答案旁边的复选标记,而不是我的评论。嗨,请参考我下面提供的解决方案。如果这有助于解决您的问题,请将其作为答案(单击“我的答案”旁边的复选标记,将其从灰色变为填充)。提前感谢~如果仍然有任何问题,请让我知道。嗨,拉尔,有关于这个问题的更新吗?你对我的评论投赞成票了吗?我的意思是点击我答案旁边的复选标记,而不是我的评论。