我编写了一个 PowerShell 函数,该函数使用 REST API 调用在 azure 中生成身份验证令牌。我使用租户 ID、服务主体客户端 ID 和客户端密码作为输入参数来生成此令牌。正在从 azure keyvault 中读取 SP 客户端 ID 和客户端密码。
我想写一个单元测试来:
- 从密钥库中读取机密
- 模拟 REST API 调用以生成虚拟身份验证令牌
我打算使用 PESTER 进行单元测试,在这里需要一些帮助。
这是我的功能:
function string GetAuthToken() {
$AuthTokenUri = "https://login.microsoftonline.com/$TenantId/oauth2/token"
$Body = @{
'resource' = $resourcename
'client_id' = $ID
'grant_type' = 'client_credentials'
'client_secret' = $Secret
}
$Token = Invoke-RestMethod -Method Post -Uri $AuthTokenUri -Body $Body -ContentType application/x-www-form-urlencoded'
$AuthToken = ($Token.access_token).ToString()
return $AuthToken
}