使用MG PowerShell模块无法通过appOwnerOrganizationId筛选服务主体
解决Get-MgServicePrincipal筛选Microsoft租户服务主体失败的问题
你的命令失败大概率是因为OData筛选条件里的租户ID没加字符串引号——appOwnerOrganizationId是字符串类型,必须用单引号包裹值,而且在PowerShell里单引号需要用两个单引号转义。
正确的命令应该是:
Get-MgServicePrincipal -Filter 'appOwnerOrganizationId eq ''f8cdef31-a31e-4b4a-93e4-5f571e91255a''' -ConsistencyLevel eventual
如果还是没结果,试试下面的排查步骤:
- 先更新Microsoft Graph PowerShell模块到最新版,旧版本可能存在筛选逻辑的bug:
Update-Module Microsoft.Graph -Force - 检查当前账号的权限,筛选服务主体需要至少
Application.Read.All权限。用Get-MgContext查看已授权的权限,如果没有该权限,重新登录授权:Connect-MgGraph -Scopes "Application.Read.All" - 可以加
-CountVariable参数验证是否有匹配结果:
如果Get-MgServicePrincipal -Filter 'appOwnerOrganizationId eq ''f8cdef31-a31e-4b4a-93e4-5f571e91255a''' -ConsistencyLevel eventual -CountVariable spCount $spCount$spCount返回大于0的数字,说明结果存在,只是可能需要调整输出格式查看。
内容的提问来源于stack exchange,提问作者tbhaxor
相关产品推荐
相关产品推荐

