概述
业务敏感数据通常以安全的方式使用。 这意味着处理此数据的功能或应用程序必须支持数据加密、使用证书等。由于 Microsoft Dynamics 365 for Finance and Operations 的云版本不支持证书的本地存储,因此在这种情况下,客户需要使用密钥保管库存储。 Azure 密钥保管库提供了将加密密钥、证书导入到Azure和管理它们的机会。 有关Azure 密钥保管库的其他信息:什么是Azure 密钥保管库。
定义财务和运营Microsoft Dynamics 365与Azure 密钥保管库之间的集成需要以下数据:
- 密钥保管库 URL (DNS 名称) ,
- 客户端 ID (应用程序标识符) ,
- 证书及其名称的列表,
- 密钥 (密钥值) 。
可在下面找到设置步骤的详细说明:
创建密钥保管库存储
- 使用链接打开Microsoft Azure 门户:https://ms.portal.azure.com/。
- 单击左侧面板上的“创建资源”按钮以创建新资源。 选择“安全 + 标识”组和“密钥保管库”资源类型。
- “创建密钥保管库”页已打开。 在这里,应定义密钥保管库存储参数,然后单击“创建”按钮:
- 指定密钥保管库的“名称”。 此参数在“设置Azure 密钥保管库客户端”中称为 <KeyVaultName>。
- 选择订阅。
- 选择资源组。 它类似于密钥保管库存储中的内部目录。 可以使用现有资源组,也可以创建一个新资源组。
- 选择你的位置。
- 选择定价层。
- 单击“创建”。
- 将创建的密钥保管库固定到仪表板。
上传证书
将过程上传到密钥保管库存储取决于证书类型。
导入 *.pfx 证书
- 可以使用 PowerShell 脚本将扩展名为 *.pfx 的证书上传到Azure 密钥保管库。
- 按照以下说明安装适用于 PowerShell 的 AzureRM 模块: https://learn.microsoft.com/ru-ru/powershell/azure/install-azurerm-ps?view=azurermps-5.4.0
- 在 PowerShell 中运行脚本,如下所示:
Connect-AzAccount
$pfxFilePath = '<Localpath>'
$pwd = “”
$secretName = “<name>”
$keyVaultName = '<keyvault>'
$collection = New-ObjectSystem.Security.Cryptography.X509Certificates.X509Certificate2Collection
$collection。导入 ($pfxFilePath,$pwd[System.Security.Cryptography.X509Certificates.X509KeyStorageFlags]::Exportable)
$pkcs 12ContentType =[System.Security.Cryptography.X509Certificates.X509ContentType]::P kcs12
$clearBytes = $collection。导出 ($pkcs 12ContentType)
$fileContentEncoded = [System.Convert]::ToBase64String ($clearBytes)
$secret = ConvertTo-SecureString -String $fileContentEncoded -AsPlainText –Force
$secretContentType = 'application/x-pkcs12'
Set-AzKeyVaultSecret -VaultName $keyVaultName -Name $secretName -SecretValue $Secret -ContentType $secretContentType
位置:
<Localpath> - 具有 certicate 的文件的本地路径,例如 C:\<smth.pfx>
<name> - 证书的名称,例如 <smth>
<keyvault> - Key Vault 存储的名称
如果需要密码,请将其添加到标记$pwd
- 为上传到密钥保管库的证书设置标记Azure。
- 在Microsoft Azure 门户中,单击“仪表板”*按钮,然后选择相应的 Key Vault 将其打开。
- 单击“机密”磁贴。
- 按证书名称查找相应的机密并将其打开。
- 打开“标记”选项卡。
- 将“标记名称”设置为“type”,并将标记值设置为“certificate”。
注意:标记名称和标记值必须填写,不带引号,小写。
- 单击“确定”按钮并保存更新的机密。
导入其他证书
- 单击左侧面板上的“仪表板” 按钮,查看之前创建的密钥保管库。
- 选择相应的 Key Vault 将其打开。 “概述”选项卡显示密钥保管库存储的基本参数,包括“DNS 名称”。
注意:DNS 名称是与密钥保管库集成的必需参数,因此应在应用程序中指定它,并在“设置Azure 密钥保管库客户端”中引用为<密钥保管库 URL> 参数。
- 单击“机密”磁贴。
- 单击“机密”页上的“生成/导入”按钮,将新证书添加到密钥保管库存储。 在页面右侧,应定义证书参数:
- 在“上传选项”字段中选择“手动”值。
- 在“名称”字段中输入证书名称。
注意: 机密名称 是与密钥保管库集成的必需参数,因此应在应用程序中指定它。 在“设置Azure 密钥保管库客户端”中将其称为 <SecretName> 参数。
- 打开证书进行编辑,并复制其所有内容,包括开始标记和结束标记。
- 将复制的内容粘贴到“值”字段中。
- 启用证书。
- 按“创建”按钮。
- 可以上传多个版本的证书,并在密钥保管库存储中对其进行管理。 如果需要上传现有证书的新版本,请选择相应的证书,然后单击“新版本”按钮。
注意:当前版本应在应用程序设置中定义,在“设置Azure 密钥保管库客户端”<中称为 SecretVersion> 参数。
为应用程序创建入口点
为使用密钥保管库存储的应用程序创建入口点。
- 打开旧版门户 https://manage.windowsazure.com/。
- 单击左侧面板中的“Azure Active Directory”,然后选择你的。
- 在打开的 Active Directory 中,选择“应用注册”选项卡。
- 单击底部面板上的“新建应用程序注册”按钮以创建新的应用程序条目。
- 指定应用程序的“名称”并选择适当的类型。
注意:在此页上,还可以定义“登录 URL”,该 URL 的格式应 http://< AppName>,其中 <AppName> 是上一页上指定的应用程序名称。 <必须在密钥保管库存储的访问策略中定义 AppName> 。
- 单击“创建”按钮。
配置应用程序
- 打开“应用注册”选项卡。
- 查找适当的应用程序。 “应用程序 ID”字段与 密钥保管库 Client> 的参数<具有相同的值。
- 单击“设置”按钮,然后打开“密钥”选项卡。
- 生成密钥。 它用于从应用程序安全访问密钥保管库存储。
- 填写“说明”字段。
- 可以创建持续时间等于一年或两年的密钥。 单击页面底部的“保存”按钮后, “键值 ”变为可见。
注意: 密钥值 是与密钥保管库集成的必需参数。 应复制它,然后在应用程序中指定。 在“设置Azure 密钥保管库客户端”中将其称为<密钥保管库密钥>参数。
- 从配置中复制“客户端 ID”的值。 应在应用程序中指定它,并在“设置Azure 密钥保管库客户端”中引用为<密钥保管库 Client> 参数。
将应用程序添加到密钥保管库存储
将应用程序添加到之前创建的密钥保管库存储。
- 返回Microsoft Azure 门户 (https://ms.portal.azure.com/) ,
- 打开密钥保管库存储,然后单击磁贴“访问策略”。
- 单击“添加新项”按钮,然后选择“选择主体”选项。 然后,应按名称查找应用程序。 找到应用程序后,单击“选择”按钮。
- 填写“从模板进行配置”字段,然后单击“确定”按钮。
注意:如有必要,还可以在此页上设置密钥权限。