【问题标题】:Azure - Add private certificate - error with Key vault key and permissionsAzure - 添加私有证书 - 密钥保管库密钥和权限错误
【发布时间】:2017-01-05 18:22:59
【问题描述】:

基本上,我正在尝试将私有证书(.pfx 文件)添加到集成帐户。我正在使用新门户。

我做了什么/创造了什么:

  • 资源组
  • 集成帐号
  • 密钥库
  • 活动目录
  • 使用命令 Set-AzureRmKeyVaultAccessPolicy 向我的用户授予对所有密钥和机密的权限

每当我转到我的集成帐户 > 证书 > 添加 > 选择 [Certificate Type]="Private" 时,组合框 Resource Group 和 Key Vault 会自动填充,但 Key Name 会引发以下错误:

与密钥保管库 [MY_KEY_VAULT] 的通信失败。请通过授予逻辑应用服务主体“7cd684f4-8a78-49b0-91ec-6a35d38739ba”对“列表”、“获取”、“解密”和“签名”操作的访问权限,授权逻辑应用对密钥保管库执行操作。

奇怪的是,ObjectID 7cd684f4-8a78-49b0-91ec-6a35d38739ba 不属于我的 AD,而是属于我的公司 AD。

【问题讨论】:

    标签: azure certificate azure-keyvault


    【解决方案1】:

    错误消息中给出的 Guid 有点误导。它指的是 Azure Logic Apps 服务帐户。

    您可以通过在 KeyVault 中为用户“Azure 逻辑应用”授予所需权限来解决此问题

    【讨论】:

    • 我只是在多次尝试在 powershell 中完成相同的事情之后才发现这个答案 - 我显然不允许这样做 - 这对我第一次有用,谢谢 :) 你说得很对无法知道预期的主体名称,包括读取 UI 弹出窗口,这非常令人困惑。
    【解决方案2】:

    您复制的错误消息清楚地表明缺少授权步骤。需要通过授予对逻辑应用服务主体 ('7cd684f4-8a78-49b0-91ec-6a35d38739ba') 的访问权限来授权逻辑应用对 Key Vault 执行操作。

    执行上面给出的设置访问策略。

    我已复制您发布的错误以供参考。

    “与密钥保管库 [MY_KEY_VAULT] 的通信失败。请通过授予逻辑应用服务主体 '7cd684f4-8a78-49b0-91ec-6a35d38739ba' for 'list' 的访问权限来授权逻辑应用对密钥保管库执行操作,'get '、'解密'和'签名'操作"

    【讨论】:

      【解决方案3】:

      需要设置访问策略

      创建私有证书时,请按以下步骤操作:

      1. 将密钥上传到密钥保管库

      2. 设置访问策略,其中逻辑应用服务主体“7cd684f4-8a78-49b0-91ec-6a35d38739ba”

        设置访问策略:

         Set-AzureRmKeyVaultAccessPolicy -VaultName 'IntegrationAccountVault1' -ServicePrincipalName $servicePrincipal -PermissionsToKeys  decrypt, sign, get, list
        
      3. 在集成帐户中,使用添加证书并从下拉列表中选择私有证书。将密钥与相应的公共证书关联。

      【讨论】:

      • 嗨@Padma,我无法使用 Get-AzureRmADServicePrincipal 命令找到具有该 ID 的服务主体。是不是很奇怪?我真的不明白该怎么做
      • 嗨@Padma,我将您的答案标记为正确但带有注释,为了使该命令正常工作(没有权限错误),我必须登录powershell,提供我的订阅和对象所在的租户ID是,如果我只提供订阅,我会收到权限错误。不知道为什么,但它只能这样工作。
      猜你喜欢
      • 1970-01-01
      • 2020-10-19
      • 2016-10-13
      • 1970-01-01
      • 2015-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-18
      相关资源
      最近更新 更多