Azure Graph,过滤 activity 和组成员

Azure Graph, filtering on activity and group membership

是否可以在单个 GET 调用中只获取属于一个组的用户,而不是其他组的成员并且在 X 天内登录?

我一直在尝试通过类似于以下的调用来做到这一点:-

"https://graph.microsoft.com/beta/users?$select=id,signInActivity&$expand=memberOf&$filter=signInActivity/lastSignInDateTime le 2021-04-26T17 :30:09Z&$filter=包含(memberOf.id,'11111111-1111-1111-1111-111111') 并且不包含(memberOf,'222222-2222-2222-2222-22222222')&$top=999 “

但是我尝试制定过滤器参数时它总是会产生错误

您可以使用下面的MS GraphAPI获取在特定日期和时间登录的特定组的成员列表。

Note : Details for the signInActivity property require an Azure AD Premium P1/P2 license and the AuditLog.Read.All permission

https://graph.microsoft.com/beta/groups/{groupObjectID}?$expand=members&$filters=signInActivity/lastSignInDateTime ge 2022-01-21T00:00:00Z&$select=id,displayName

注意:Microsoft Graph API 仅支持用户 end-point 中的资源类型 signInActivity,不支持组 end-point 中的资源类型。这就是我们无法在组级别

上根据 LastSignInDateTime 过滤成员的原因

更多信息你可以参考这个Document