使用 powershell 从 azure DevOps UI 下载 csv 审计日志

Download audit logs in csv from azure DevOps UI using powershell

你好我正在寻找一个脚本,它可以在给定的时间范围内使用 powershell 从 azure DevOps 下载 csv 格式的导出日志。就像我可以输入时间范围,然后脚本将从 azure DevOps ui -

下载 return csv 文件

我在这里找到了这个脚本 https://developercommunity.visualstudio.com/content/problem/615053/question-we-want-to-get-the-export-audit-log-using.html

我不确定在这里使用什么用户名、密码和url

$Username = 'domain\user'
$Password = 'password'
$Url = "https://server:8080/tfs/_api/_licenses/Export"
$Path = "D:\temp\data.csv"
$WebClient = New-Object System.Net.WebClient
$WebClient.Credentials = New-Object    
System.Net.Networkcredential($Username, $Password)
$WebClient.DownloadFile( $url, $path )

我找不到关于此的更多数据

您分享的示例是从 Azure DevOps Server 下载审核日志,url 是 https://{your_server}/tfs/_api/_licenses/Export,用户名,密码是您登录 TFS 的用户名和密码。 注意:不要忘记在用户名前添加域名。

如果您使用的是 Azure DevOps 服务,您可以尝试这个 REST API 和 power shell 脚本来保存审计日志。

$outfile = "{Local path}"
$connectionToken="{PAT}"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
$AuditLogURL = "https://auditservice.dev.azure.com/{organization}/_apis/audit/downloadlog?format=csv&startTime={startTime}&endTime={endTime}&api-version=6.1-preview.1" 
$AuditInfo = Invoke-RestMethod -Uri $AuditLogURL -Headers @{authorization = "Basic $base64AuthInfo"} -Method Get –OutFile $outfile

结果: