如何查询Azure DevOps组织用户添加者及许可证分配人?
查询Azure DevOps用户添加及许可证分配操作记录的方法
一、通过Azure DevOps门户查看审计日志
- 操作步骤:
- 登录你的Azure DevOps组织,进入组织设置页面
- 在左侧导航栏找到审计选项(如果看不到这个选项,先确认你拥有组织管理员权限)
- 在审计日志页面设置筛选条件:
- 操作类型选择用户添加或许可证分配相关的选项(比如“添加用户到组织”“更新用户许可证”)
- 还可以按时间范围、目标用户等维度缩小范围,筛选结果里会明确显示操作执行者、操作时间和详细内容
二、用PowerShell调用Azure DevOps REST API查询
- 前提:先创建一个拥有组织级审计日志读取权限的个人访问令牌(PAT)
- 参考脚本示例:
# 替换为你的组织URL和PAT令牌 $orgUrl = "https://dev.azure.com/你的组织名称" $pat = "你的PAT令牌" $base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(":$($pat)")) # 查询用户添加操作记录 $userAddEvents = Invoke-RestMethod -Uri "$orgUrl/_apis/audit/auditlog?api-version=7.1-preview.1&category=MemberManagement&actionFilter=AddMember" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} # 查询许可证分配操作记录 $licenseAssignEvents = Invoke-RestMethod -Uri "$orgUrl/_apis/audit/auditlog?api-version=7.1-preview.1&category=LicenseManagement&actionFilter=AssignLicense" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} # 输出关键信息 $userAddEvents.value | Select-Object actorDisplayName, action, details, startTime $licenseAssignEvents.value | Select-Object actorDisplayName, action, details, startTime
- 脚本里的
category和actionFilter可按需调整,比如要查删除用户的记录用RemoveMember,查许可证更新用UpdateLicense
三、通过Azure AD审计日志补充查询(适用于AD集成场景)
- 如果你的Azure DevOps组织和Azure Active Directory集成,部分用户添加/许可证分配操作可能会记录在Azure AD的审计日志中:
- 登录Azure门户,进入Azure Active Directory服务
- 在左侧菜单选择审计日志
- 筛选操作类型为“添加成员到组”“分配许可证”等,结合Azure DevOps对应的AD组信息,就能找到操作执行者
注意事项
- 审计日志默认只保留90天,超过这个时间范围的操作记录无法查询
- 必须拥有组织管理员权限或审计日志读取权限,才能访问这些操作记录
内容的提问来源于stack exchange,提问作者user3585909
相关产品推荐
相关产品推荐

