【Azure Developer】AAD API如何获取用户“Block sign in”信息(accountEnabled)
问题描述
使用API获取所有Azure AD中的用户列表,API所参考的文档:https://docs.microsoft.com/en-us/graph/api/user-list?view=graph-rest-1.0&tabs=http,如果想过滤出“Block sign in”为no的人,如何获取?
解决办法
在对Azure AD User的属性进行分析后, Block Sign In就是accountEnabled属性。所以是可以通过$filter参数来进行筛选。
accountEnabled | Boolean | true if the account is enabled; otherwise, false. This property is required when a user is created. Supports $filter. |
如果单独使用accountEnabled属性作为过滤条件的完整URL为:https://microsoftgraph.chinacloudapi.cn/beta/users?$filter=accountEnabled eq false
通常,在使用$filter时,都是需要多个条件,如accountEnabled和userPrincipalName的endsWith条件结合使用,当启用到endsWith等filter函数时,需要注意以下两点:
- 和$count=true搭配使用
-
在Request Header中添加ConsistencyLevel:eventual
Python的示例代码如:
import http.client conn = http.client.HTTPSConnection("microsoftgraph.chinacloudapi.cn") payload = '' headers = { 'ConsistencyLevel': 'eventual', 'Authorization': 'Bearer ' } conn.request("GET", "/v1.0/users?$filter=endswith(userPrincipalName,'n')%20and%20accountEnabled%20eq%20false&$count=true", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
参考资料
Get a user account using a sign-in name: https://docs.microsoft.com/en-us/graph/api/user-list?view=graph-rest-1.0&tabs=http#example-2-get-a-user-account-using-a-sign-in-name
User resource properties: https://docs.microsoft.com/en-us/graph/api/resources/user?view=graph-rest-1.0#properties
Unable to filter with endswith: https://github.com/microsoftgraph/microsoft-graph-docs/issues/4331
- 微信小程序如何获取openid及用户信息
- 解决 {"ret":100030,"msg":"this api without user authorization"} android QQ第三发登录成功后获取用户信息失败的问题
- 用户研究如何获取更为真实的用户信息
- 用户信息系统信息vc api_获取系统信息和用户信息
- uni-app如何在写微信小程序时调用getLocation接口获取用户位置信息
- sign-in-with-apple 苹果登陆,后端如何解析用户数据?
- java如何获取AD域用户信息?
- 【UWP开发】如何通过UWP获取系统用户Gamertag或者UserName等用户信息
- 手把手教你如何获取微信公众号用户的个人信息(包括OpenId)
- Python:如何比较均匀的获取知乎用户信息并且存储在本地的Excel中?
- 如何在Service层获取用户session中保存的用户信息的方法(Filter+ThreadLocal)
- 如何获取Dynamics当前登录的用户的GUID,进而获取用户的信息
- 如何使用session获取登录用户的信息
- 关于openstack中普通用户如何获取权限查询集群信息,创建模版flavor
- 订阅号如何获取用户基本信息?
- 在有nginx做反向代理时候,如何获取用户真实Ip信息
- 第八篇 :微信公众平台开发实战Java版之如何网页授权获取用户基本信息
- 第七篇 :微信公众平台开发实战Java版之如何获取微信用户基本信息
- vc api_获取系统信息和用户信息
- 微信公众平台开发实战Java版之如何网页授权获取用户基本信息