1

我们正在将个人开发者证书链接到某个服务主体。当开发人员离开我们的团队时,我们将从服务主体中删除该凭据。

这工作得很好,但有点麻烦,因为开发人员的名字没有与凭证相关联。

我注意到它们是凭据上的 customIdentifierKey 属性......但我找不到如何设置 customIdentifierKey。

任何人都知道如何做到这一点?

New-AzureRmADAppCredential -ApplicationId $appId -CertValue $keyValue -EndDate $cert.NotAfter -StartDate $cert.NotBefore 
4

1 回答 1

1

可以使用Azure AD v2 cmdlet设置和获取自定义密钥标识符。

在这里我添加一个证书:

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用作 Type。

自定义密钥标识符存储为字节,以 ASCII 编码。

所以当你得到一个时,你需要通过一个解码来运行它:

$cred = Get-AzureADApplicationKeyCredential -ObjectId 2648416a-aaaa-4bc0-9190-aaaab6165710
[System.Text.Encoding]::ASCII.GetString($cred.CustomKeyIdentifier)

有趣的是,如果您通过 Azure 门户在(客户端密码)上设置标识符PasswordCredential,它会将其编码为 Unicode。

于 2017-06-01T14:57:15.993 回答