无法设置 AzureRmKeyVaultAccessPolicy
Unable to Set-AzureRmKeyVaultAccessPolicy
我们最近购买了 Azure 应用服务证书。我在设置过程中为此证书创建了一个新的 Key Vault Store,并导入了证书。
现在我正在尝试使用此处提供的 powershell 脚本创建应用服务证书的本地副本:https://blogs.msdn.microsoft.com/appserviceteam/2017/02/24/creating-a-local-pfx-copy-of-app-service-certificate/
但是,我得到一个错误:
Set-AzureRmKeyVaultAccessPolicy : Cannot find the Active Directory object '' in tenant 'my tenant id'. Please make sure that the user or application service principal you are authorizing is registered in the curren
t subscription's Azure Active directory. The TenantID displayed by the cmdlet 'Get-AzureRmContext' is the current subsc
ription's Azure Active directory.
At C:\Projekt\Certificates\Azure\copyasc.ps1:22 char:1...
我不确定还有什么相关的,但这里有一些注意事项:
我发送到失败的 Set-AzureRmKeyVaultAccessPolicy -UserPrincipalName temp@outlook.com 的用户名对应于我在 Azure Active Directory 的默认目录中看到的唯一用户的用户名.
此用户的 ObjectId 在 keyvault 的访问策略列表中(我通过将 -Debug 添加到失败的 cmdlet 来看到这一点)。
密钥保管库中没有密钥。有一个(非托管)秘密,即证书。
有些主题提到了有关 AD 应用程序的内容。我不确定我是否理解我读到的关于这些的内容。这是我在创建密钥库时需要做的事情吗?
希望有人能帮助我吗? :)
根据错误日志,您的 UserPrincipalName
值是错误的。请执行以下命令以获取 UserPrincipalName
.
Get-Azureaduser
temp@outlook.com
不是 Azure AD 帐户,其用户主体名称应为 temp@outlook.com#EXT#@<your AD>
.
或者您可以将 UserPrincipalName
替换为用户的对象 ID。
Set-AzureRmKeyVaultAccessPolicy -ResourceGroupName $keyVaultResourceGroupName -VaultName $keyVaultName -ObjectId $userobjectid -PermissionsToSecrets get
我们最近购买了 Azure 应用服务证书。我在设置过程中为此证书创建了一个新的 Key Vault Store,并导入了证书。
现在我正在尝试使用此处提供的 powershell 脚本创建应用服务证书的本地副本:https://blogs.msdn.microsoft.com/appserviceteam/2017/02/24/creating-a-local-pfx-copy-of-app-service-certificate/
但是,我得到一个错误:
Set-AzureRmKeyVaultAccessPolicy : Cannot find the Active Directory object '' in tenant 'my tenant id'. Please make sure that the user or application service principal you are authorizing is registered in the curren t subscription's Azure Active directory. The TenantID displayed by the cmdlet 'Get-AzureRmContext' is the current subsc ription's Azure Active directory. At C:\Projekt\Certificates\Azure\copyasc.ps1:22 char:1...
我不确定还有什么相关的,但这里有一些注意事项:
我发送到失败的 Set-AzureRmKeyVaultAccessPolicy -UserPrincipalName temp@outlook.com 的用户名对应于我在 Azure Active Directory 的默认目录中看到的唯一用户的用户名.
此用户的 ObjectId 在 keyvault 的访问策略列表中(我通过将 -Debug 添加到失败的 cmdlet 来看到这一点)。
密钥保管库中没有密钥。有一个(非托管)秘密,即证书。
有些主题提到了有关 AD 应用程序的内容。我不确定我是否理解我读到的关于这些的内容。这是我在创建密钥库时需要做的事情吗?
希望有人能帮助我吗? :)
根据错误日志,您的 UserPrincipalName
值是错误的。请执行以下命令以获取 UserPrincipalName
.
Get-Azureaduser
temp@outlook.com
不是 Azure AD 帐户,其用户主体名称应为 temp@outlook.com#EXT#@<your AD>
.
或者您可以将 UserPrincipalName
替换为用户的对象 ID。
Set-AzureRmKeyVaultAccessPolicy -ResourceGroupName $keyVaultResourceGroupName -VaultName $keyVaultName -ObjectId $userobjectid -PermissionsToSecrets get