You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PowerShell和Microsoft Graph访问租户合作信息遇权限问题

关于PowerShell调用Microsoft Graph获取委托管理员关系数据的授权问题

问题场景

我在使用PowerShell通过Microsoft Graph访问租户合作数据时遇到问题,主要尝试执行Get-MgTenantRelationshipDelegatedAdminRelationship和Get-MgTenantRelationshipDelegatedAdminCustomer命令。已分配DelegatedAdminRelationship.Read.All及其他相关权限,但无法得到预期结果。

已执行操作与预期

  • 操作:通过Connect-MgGraph完成身份验证后执行上述命令
  • 权限:确认账号已拥有DelegatedAdminRelationship.Read.All权限
  • 预期:获取委托管理员关系和客户的详细数据
  • 结果:返回401未授权错误或无数据

错误信息

Get-MgTenantRelationshipDelegatedAdminRelationship : 您无权访问该资源。状态码: 401 (未授权)
错误代码: unauthorized 日期: 2024-03-01T09:07:43 响应头:
Transfer-Encoding : chunked Vary
: Accept-Encoding Strict-Transport-Security : max-age=31536000
request-id : 51583309-64d1-4d66-b506-c128eccb8a61
client-request-id : 89376944-beb1-4bee-bda9-f00293cbe93c
x-ms-ags-diagnostic : {"ServerInfo":{"DataCenter":"Central US","Slice":"E","Ring":"2","ScaleUnit":"000","RoleInstance":"DS1PEPF000051DF"}}
Date : Fri, 01 Mar 2024 09:07:43 GMT Au
caractère Ligne:1 : 1

  • Get-MgTenantRelationshipDelegatedAdminRelationship
  • + CategoryInfo          : InvalidOperation : ({ Top = , Skip ... , Headers =  }:<>f__AnonymousType6`9)
    

[Get-MgTenantRel...lationship_List], Exception

  • FullyQualifiedErrorId : unauthorized,Microsoft.Graph.PowerShell.Cmdlets.GetMgTenantRelationshipDelegatedAdminRelationship_List

疑问

  1. 是否存在我遗漏的特定权限配置或步骤以成功使用这些命令?
  2. 是否有其他有效访问此类信息的方法或命令?

解决方案建议

1. 验证权限类型与授予方式

DelegatedAdminRelationship.Read.All支持应用权限和委派权限:

  • 若使用委派权限,需在身份验证时明确指定作用域:
    Connect-MgGraph -Scopes "DelegatedAdminRelationship.Read.All"
    
  • 若使用应用权限,需在Azure AD应用注册中分配该权限并完成管理员同意,同时使用应用凭据登录:
    Connect-MgGraph -ClientId "YOUR_APP_ID" -TenantId "YOUR_TENANT_ID" -CertificateThumbprint "YOUR_CERT_THUMBPRINT"
    

2. 检查账号角色与租户关系

  • 确保当前账号是委派管理员,或在合作伙伴租户中拥有对应管理员权限,仅持有权限但无实际委派关系会返回无数据,权限配置错误则触发401。
  • 确认租户间已建立有效的委托管理员关系,无关系时命令返回空结果而非401。

3. 更新Graph PowerShell模块

旧版本模块可能存在API兼容问题,更新至最新版本:

Update-Module Microsoft.Graph

4. 替代访问方法

若PowerShell命令仍异常,可直接调用Microsoft Graph REST API测试:

$token = (Get-MgContext).AccessToken
Invoke-RestMethod -Uri "https://graph.microsoft.com/v1.0/tenantRelationships/delegatedAdminRelationships" -Headers @{Authorization = "Bearer $token"}

也可通过Graph Explorer测试API,排除PowerShell模块本身的问题。

5. 确认权限生效状态

权限授予后可能需等待数分钟生效,同时检查是否遗漏关联权限(如Directory.Read.All,若需读取客户目录信息),核心权限仍为DelegatedAdminRelationship.Read.All。


内容的提问来源于stack exchange,提问作者Simon Mocquet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 02:27:50