我们正在将个人开发者证书链接到某个服务主体。 当开发人员离开我们的团队时,我们将从服务主体中删除该凭证。
这很有效,但这有点麻烦,因为开发者的名字没有链接到凭证。
我注意到它们是凭据上的customIdentifierKey属性...但我找不到如何设置customIdentifierKey。
任何人都知道如何做到这一点?
New-AzureRmADAppCredential -ApplicationId $appId -CertValue $keyValue -EndDate $cert.NotAfter -StartDate $cert.NotBefore
答案 0 :(得分:0)
您可以使用Azure AD v2 cmdlets设置和获取自定义密钥标识符。
我在这里添加证书:
New-AzureADApplicationKeyCredential -ObjectId 2648416a-aaaa-4bc0-9190-aaaab6165710 -CustomKeyIdentifier 'Your key name' -StartDate '2017/06/01' -EndDate '2018/06/01' -Type AsymmetricX509Cert -Usage Verify -Value $keyValue
假设您的$keyValue
包含X509证书。如果它是对称密钥,则可以使用Symmetric
作为类型。
自定义密钥标识符以字节存储,以ASCII格式编码。
所以当你得到一个时,你需要通过解码来运行它:
$cred = Get-AzureADApplicationKeyCredential -ObjectId 2648416a-aaaa-4bc0-9190-aaaab6165710
[System.Text.Encoding]::ASCII.GetString($cred.CustomKeyIdentifier)
有趣的是,如果您通过Azure门户在PasswordCredential
(客户端密钥)上设置标识符,则会使用Unicode对其进行编码。