如何获取Azure Databricks工作区所有用户的最后登录详情?
获取Azure Databricks用户最后登录时间的方法
users/get接口仅返回用户基础状态信息,要获取登录时间戳这类详情,可通过以下两种方式实现:
1. 利用审计日志API
通过审计日志接口筛选user_login类型的事件记录,就能提取用户登录时间:
- 调用审计日志查询接口,指定事件类型为
user_login - 对每个用户的登录记录按时间降序排序,第一条记录即为该用户的最后登录时间
- 前提:工作区已启用审计日志,且你具备审计数据的访问权限
2. 查询内置系统表system.access.audit
如果你的Databricks Runtime版本在11.3及以上,可直接在Databricks SQL中执行聚合查询:
SELECT user_identity.email, MAX(event_time) AS last_login_time FROM system.access.audit WHERE event_type = 'user_login' GROUP BY user_identity.email ORDER BY last_login_time DESC;
该表存储了全量审计事件,通过上述SQL可快速聚合出每个用户的最后登录时间。
额外说明
- 审计日志默认保留90天,若需更长周期的历史数据,需配置外部存储(如ADLS)归档日志
- 两种方式均要求你拥有工作区管理员权限,或至少具备审计数据的访问权限
内容的提问来源于stack exchange,提问作者Ajay
相关产品推荐
相关产品推荐

