Обзор
Конфиденциальные для бизнеса данные обычно используются защищенным способом. Это означает, что функциональные возможности или приложения, работающие с данными, должны поддерживать шифрование данных, работу с сертификатами и т. д. Так как облачная версия Microsoft Dynamics 365 for Finance and Operations не поддерживает локальное хранилище сертификатов, в этом случае клиентам необходимо использовать хранилище ключей. Azure Key Vault возможность импорта криптографических ключей, сертификатов в Azure и управления ими. Дополнительные сведения об azure Key Vault. Что такое Azure Key Vault.
Для определения интеграции между Microsoft Dynamics 365 for Finance and Operations и Azure Key Vault требуются следующие данные:
-
URL-адрес хранилища ключей (DNS-имя),
-
Идентификатор клиента (идентификатор приложения),
-
Список сертификатов с именами
-
Секретный ключ (значение ключа).
Ниже приведено подробное описание действий по настройке.
Создание хранилища Key Vault хранилища
-
Откройте microsoft портал Azure по ссылке: https://ms.portal.azure.com/.
-
Нажмите кнопку "Создать ресурс" на левой панели, чтобы создать ресурс. Выберите группу "Безопасность и удостоверение" и тип ресурса "Key Vault".
-
Откроется страница "Создание хранилища ключей". Здесь необходимо определить параметры хранилища ключей и нажать кнопку "Создать":
-
Укажите имя хранилища ключей. Этот параметр называется "Настройка клиента Azure Key Vault"<KeyVaultName>.
-
Выберите подписку.
-
Выберите группу ресурсов. Это как внутренний каталог в хранилище ключей. Вы можете использовать существующую группу ресурсов или создать новую.
-
Выберите свое расположение.
-
Выберите ценовую категорию.
-
Нажмите кнопку "Создать".
-
Закрепите созданное хранилище ключей на панели мониторинга.
Отправка сертификата
Процедура отправки в хранилище ключей зависит от типа сертификата.
Импорт сертификатов *.pfx
-
Сертификаты с расширением *.pfx можно отправить в Azure Key Vault с помощью скрипта PowerShell.
-
Установите модуль AzureRM для PowerShell, следуя следующей инструкции: https://learn.microsoft.com/ru-ru/powershell/azure/install-azurerm-ps?view=azurermps-5.4.0
-
Запустите сценарий в PowerShell, как показано в примере ниже:
Connect-AzAccount
$pfxFilePath = ' <Localpath> '
$pwd = ''
$secretName = ' <имя> '
$keyVaultName = ' <keyvault> '
$collection = New-ObjectSystem.Security.Cryptography.X509Certificates.X509Certificate2Collection
$collection. Import($pfxFilePath, $pwd,[System.Security.Cryptography.X509Certificates.X509KeyStorageFlags]::Exportable)
$pkcs 12ContentType =[System.Security.Cryptography.X509Certificates.X509ContentType]::P kcs12
$clearBytes = $collection. Export($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> — локальный путь к файлу с сертификатом, например C:\<smth>.pfx
<имя> — имя сертификата, например <smth>
<keyvault> — имя хранилища ключей
Если пароль требуется, добавьте его в тег $pwd
-
Задайте тег для сертификата, отправленного в хранилище ключей Azure.
-
В microsoft портал Azure нажмите кнопку "Панель мониторинга" и выберите соответствующее хранилище ключей, чтобы открыть его.
-
Щелкните плитку "Секреты".
-
Найдите соответствующий секрет по имени сертификата и откройте его.
-
Откройте вкладку "Теги".
-
Задайте имя тега = "тип", а значение тега — "сертификат".
Примечание. Имя тега и значение тега должны заполняться без кавычек и в нижнем регистре.
-
Нажмите кнопку "ОК" и сохраните обновленный секрет.
Импорт других сертификатов
-
Нажмите кнопку "Панельмониторинга" на левой панели, чтобы увидеть созданное ранее хранилище ключей.
-
Выберите соответствующее хранилище ключей, чтобы открыть его. На вкладке "Обзор" отображаются основные параметры хранилища ключей, включая DNS-имя.
Примечание. DNS-имя является обязательным параметром для интеграции с хранилищем ключей, поэтому оно должно быть указано в приложении и указано в разделе "Настройка клиента Azure Key Vault" как параметр<Key Vault URL->.
-
Щелкните плитку "Секреты".
-
Нажмите кнопку "Создать или импортировать" на странице "Секреты" , чтобы добавить новый сертификат в хранилище ключей. В правой части страницы необходимо определить параметры сертификата:
-
Выберите значение "Вручную" в поле "Параметры отправки".
-
Введите имя сертификата в поле "Имя".
Примечание. Имя секрета является обязательным параметром для интеграции с хранилищем ключей, поэтому оно должно быть указано в приложении. Он называется "Настройка клиента Azure Key Vault" < secretName> параметра.
-
Откройте сертификат для редактирования и скопируйте все его содержимое, включая начальный и закрывающий теги.
-
Вставьте скопированное содержимое в поле "Значение".
-
Включите сертификат.
-
Нажмите кнопку "Создать".
-
Вы можете передать несколько версий сертификата и управлять ими в хранилище ключей. Если необходимо отправить новую версию для существующего сертификата, выберите соответствующий сертификат и нажмите кнопку "Создать версию".
Примечание. Текущая версия должна быть определена при настройке приложения и называется в разделе "Настройка клиента Azure Key Vault"< secretVersion>.
Создание точки входа для приложения
Создайте точку входа для приложения, использующего хранилище ключей.
-
Откройте устаревший портал https://manage.windowsazure.com/.
-
Щелкните "Azure Active Directory" на левой панели и выберите свою.
-
В открывом каталоге Active Directory перейдите на вкладку "Регистрация приложения".
-
Нажмите кнопку "Регистрация нового приложения" на нижней панели, чтобы создать новую запись приложения.
-
Укажите "Имя" приложения и выберите соответствующий тип.
Примечание. На этой странице также можно определить "URL-адрес входа", который должен иметь формат http://<AppName>, где <AppName> — это имя приложения, указанное на предыдущей странице. <appName> должны быть определены в политиках доступа для хранилища ключей.
-
Нажмите кнопку "Создать".
Настройка приложения
-
Откройте вкладку "Регистрация приложений".
-
Найдите соответствующее приложение. Поле "Идентификатор приложения" имеет то же значение, что и параметр<Key Vault клиента>.
-
Нажмите кнопку "Параметры" и откройте вкладку "Ключи".
-
Создайте ключ. Он используется для защищенного доступа к хранилищу ключей из приложения.
-
Заполните поле "Описание".
-
Вы можете создать ключ с периодом длительности, равным одному или двум годам. После нажатия кнопки "Сохранить" в нижней части страницы значение ключа становится видимым.
Примечание. Значение ключа является обязательным параметром для интеграции с хранилищем ключей. Его следует скопировать, а затем указать в приложении. Он называется "Настройка клиента Azure Key Vault" <Key Vault ключом секрета> параметра.
-
Скопируйте значение "Идентификатор клиента" из конфигурации. Он должен быть указан в приложении и указан в разделе "Настройка клиента Key Vault Azure"<Key Vault параметром >клиента.
Добавление приложения в хранилище ключей
Добавьте приложение в хранилище ключей, созданное ранее.
-
Назад microsoft портал Azure (https://ms.portal.azure.com/)
-
Откройте хранилище ключей и щелкните плитку "Политики доступа".
-
Нажмите кнопку "Добавить новый" и выберите параметр "Выбрать участника". Затем следует найти приложение по его имени. Когда приложение будет найдено, нажмите кнопку "Выбрать".
-
Заполните поле "Настройка из шаблона" и нажмите кнопку "ОК".
Примечание. На этой странице также можно настроить разрешения ключа при необходимости.