我知道如何使用下面的其余查询按类型过滤成员目录角色:
https://graph.microsoft.com/v1.0/me/memberOf/$/microsoft.graph.directoryRole
因此,MS Graph api 的响应仅包含 directoryRole
对象。不确定如何使用 MS Graph .Net 客户端 SDK 来完成此操作,因为我们没有在实际 Rest 请求中指定任何 OData 关键字,例如 Select
或 Filter
。
请注意,我不想只调用 memberOf
并过滤客户端内存中的 directoryRole
类型响应,我希望此过滤器成为查询的一部分,如下所示上面的 URL,因此 memberOf
响应仅包含 directoryRole
。
最佳答案
对于 SDK,过滤是应用于对象的函数。例如:
var users = await graphClient
.Users
.Request()
.Filter("startswith(displayName,'A')")
.GetAsync();
不幸的是,这对你没有帮助,因为 /memberOf
不支持$filter
。所以你需要在客户端进行过滤。
如果您正在检查特定的 directoryRole
,你可以从另一个方向来看这个。 /members
端点确实支持按成员过滤id
:
v1.0/directoryRoles/{role-id}/members?$filter=id eq '{user-id}'
这里需要注意的是/members
不支持按 userPrincipalName
进行过滤,仅由实际id
。
关于c# - 如何使用 .Net Client SDK 从 Microsoft Graph 获取我所属的管理员角色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52208815/