Шаг 2. Миграция ключей, защищенных программным обеспечением, в миграцию ключей, защищенных HSM

Эти инструкции являются частью пути миграции из AD RMS в Azure Information Protection и применимы только в том случае, если ключ AD RMS RMS защищен программным обеспечением, и вы хотите перейти в Azure Information Protection с ключом клиента, защищенным HSM, в Azure Key Vault.

Если это не выбранный сценарий конфигурации, вернитесь к шагу 4. Экспортируйте данные конфигурации из AD RMS и импортируйте их в Azure RMS и выберите другую конфигурацию.

Это четырехкомпонентная процедура импорта конфигурации AD RMS в Azure Information Protection, чтобы привести к ключу клиента Azure Information Protection, управляемому вами (BYOK) в Azure Key Vault.

Сначала необходимо извлечь ключ сертификата лицензиара сервера (SLC) из данных конфигурации AD RMS и передать ключ в локальный NCipher HSM, следующий пакет и передать ключ HSM в Azure Key Vault, а затем авторизовать службу Azure Rights Management из Azure Information Protection для доступа к хранилищу ключей, а затем импортировать данные конфигурации.

Так как ключ клиента Azure Information Protection будет храниться и управляться Azure Key Vault, эта часть миграции требует администрирования в Azure Key Vault, а также Azure Information Protection. Если Azure Key Vault управляется другим администратором, чем вы для вашей организации, необходимо координировать и работать с этим администратором, чтобы выполнить эти процедуры.

Прежде чем начать, убедитесь, что у вашей организации есть хранилище ключей, созданное в Azure Key Vault, и что он поддерживает ключи, защищенные HSM. Хотя это не обязательно, рекомендуется использовать выделенное хранилище ключей для Azure Information Protection. Это хранилище ключей будет настроено для предоставления доступа к службе Azure Rights Management из Azure Information Protection, поэтому ключи, которые хранятся в этом хранилище ключей, должны быть ограничены только ключами Azure Information Protection.

Совет

Если вы выполняете действия по настройке Azure Key Vault и не знакомы с этой службой Azure, возможно, вам будет полезно сначала ознакомиться с Azure Key Vault.

Часть 1. Извлечение ключа SLC из данных конфигурации и импорт ключа в локальный HSM

  1. Администратор Azure Key Vault. Для каждого экспортированного ключа SLC, который вы хотите сохранить в Azure Key Vault, выполните следующие действия в разделе "Реализация добавления собственного ключа (BYOK) для Azure Key Vault документации по Azure Key Vault :

    Не следуйте инструкциям по созданию ключа клиента, так как у вас уже есть эквивалент в экспортируемом файле данных конфигурации (XML). Вместо этого вы запустите средство для извлечения этого ключа из файла и импорта его в локальную среду HSM. Средство создает два файла при запуске:

    • Новый файл данных конфигурации без ключа, который затем готов к импорту в клиент Azure Information Protection.

    • PEM-файл (контейнер ключей) с ключом, который затем готов к импорту в локальную среду HSM.

  2. Администратор Azure Information Protection или администратор Azure Key Vault. На отключенной рабочей станции запустите средство TpdUtil из набора средств миграции Azure RMS. Например, если средство установлено на диске E, где копируется файл данных конфигурации с именем ContosoTPD.xml:

    E:\TpdUtil.exe /tpd:ContosoTPD.xml /otpd:ContosoTPD.xml /opem:ContosoTPD.pem
    

    Если у вас несколько файлов данных конфигурации RMS, запустите это средство для остальных файлов.

    Чтобы просмотреть справку по этому инструменту, включающую описание, использование и примеры, запустите TpdUtil.exe без параметров.

    Дополнительные сведения для этой команды:

    • Значение /tpd: указывает полный путь и имя экспортированного файла данных конфигурации AD RMS. Полное имя параметра — TpdFilePath.

    • Параметр /otpd: указывает имя выходного файла для файла данных конфигурации без ключа. Полное имя параметра — OutPfxFile. Если этот параметр не указан, выходной файл по умолчанию имеет исходное имя файла с суффиксом _keyless и хранится в текущей папке.

    • Объект /opem: указывает имя выходного файла для PEM-файла, содержащего извлеченный ключ. Полное имя параметра — OutPemFile. Если этот параметр не указан, выходной файл по умолчанию имеет исходное имя файла с суффиксом _key и хранится в текущей папке.

    • Если при выполнении этой команды пароль не указан (с помощью имени полного параметра TpdPassword или имени короткого параметра pwd ), вам будет предложено указать его.

  3. На той же отключенной рабочей станции подключите и настройте NCipher HSM в соответствии с документацией nCipher. Теперь ключ можно импортировать в подключенный NCipher HSM с помощью следующей команды, в которой необходимо заменить собственное имя файла contosoTPD.pem:

    generatekey --import simple pemreadfile=e:\ContosoTPD.pem plainname=ContosoBYOK protect=module ident=contosobyok type=RSA
    

    Примечание.

    Если у вас несколько файлов, выберите файл, соответствующий ключу HSM, который вы хотите использовать в Azure RMS для защиты содержимого после миграции.

    При этом отображается вывод, аналогичный следующему:

    Параметры создания ключей:

    Операция операции для выполнения импорта

    Приложение приложения просто

    Проверка безопасности ключа конфигурации да

    тип ключа типа RSA

    PEM-файл pemreadfile, содержащий ключ RSA e:\ContosoTPD.pem

    идентификатор идентификатора ключа contosobyok

    Имя ключа простого имени ContosoBYOK

    Ключ успешно импортирован.

    Путь к ключу: C:\ProgramData\nCipher\Key Management Data\local\key_simple_contosobyok

В этом выходных данных подтверждается, что закрытый ключ теперь переносится на локальное устройство nCipher HSM с зашифрованной копией, сохраненной в ключе (в нашем примере "key_simple_contosobyok").

Теперь, когда ключ SLC был извлечен и импортирован в локальный HSM, вы готовы упаковать защищенный HSM ключ и передать его в Azure Key Vault.

Важно!

После завершения этого шага безопасно удалите эти файлы PEM с отключенной рабочей станции, чтобы убедиться, что они не могут получить доступ к несанкционированным пользователям. Например, запустите "шифр /w: E", чтобы безопасно удалить все файлы из диска E: .

Часть 2. Упаковка и передача ключа HSM в Azure Key Vault

Администратор Azure Key Vault. Для каждого экспортированного ключа SLC, который вы хотите сохранить в Хранилище ключей Azure, выполните следующие действия из раздела "Реализация использования" для Azure Key Vault в документации по Azure Key Vault .

Не следуйте инструкциям по созданию пары ключей, так как у вас уже есть ключ. Вместо этого вы запустите команду для передачи этого ключа (в нашем примере наш параметр KeyIdentifier использует contosobyok) из локального устройства HSM.

Перед передачей ключа в Azure Key Vault убедитесь, что служебная программа KeyTransferRemote.exe возвращает результат: SUCCESS при создании копии ключа с ограниченными разрешениями (шаг 4.1) и при шифровании ключа (шаг 4.3).

При отправке ключа в Azure Key Vault отображаются свойства ключа, включающее идентификатор ключа. Он будет выглядеть примерно так.https://contosorms-kv.vault.azure.net/keys/contosorms-byok/aaaabbbbcccc111122223333 Запишите этот URL-адрес, так как администратор Azure Information Protection должен будет сообщить службе Azure Rights Management из Azure Information Protection использовать этот ключ для своего ключа клиента.

Затем используйте командлет Set-AzKeyVaultAccessPolicy , чтобы авторизовать субъект-службу Azure Rights Management для доступа к хранилищу ключей. Необходимые разрешения — расшифровка, шифрование, распаковка, оболочка, проверка и подпись.

Например, если хранилище ключей, созданное для Azure Information Protection, называется contosorms-byok-kv, а ваша группа ресурсов называется contosorms-byok-rg, выполните следующую команду:

Set-AzKeyVaultAccessPolicy -VaultName "contosorms-byok-kv" -ResourceGroupName "contosorms-byok-rg" -ServicePrincipalName 00000012-0000-0000-c000-000000000000 -PermissionsToKeys decrypt,encrypt,unwrapkey,wrapkey,verify,sign,get

Теперь, когда вы передали ключ HSM в Azure Key Vault, вы готовы импортировать данные конфигурации AD RMS.

Часть 3. Импорт данных конфигурации в Azure Information Protection

  1. Администратор Azure Information Protection: на подключенной к Интернету рабочей станции и в сеансе PowerShell скопируйте новые файлы данных конфигурации (XML), у которых удален ключ SLC после запуска средства TpdUtil.

  2. Отправьте каждый XML-файл с помощью командлета Import-AipServiceTpd . Например, при обновлении кластера AD RMS для режима шифрования 2 должен быть по крайней мере один дополнительный файл.

    Чтобы запустить этот командлет, вам потребуется пароль, указанный ранее для файла данных конфигурации, и URL-адрес ключа, который был определен на предыдущем шаге.

    Например, используя файл данных конфигурации C:\contoso_keyless.xml и значение URL-адреса ключа из предыдущего шага, сначала выполните следующее, чтобы сохранить пароль:

     $TPD_Password = Read-Host -AsSecureString
    

    Введите пароль, указанный для экспорта файла данных конфигурации. Затем выполните следующую команду и убедитесь, что вы хотите выполнить это действие:

    Import-AipServiceTpd -TpdFile "C:\contoso_keyless.xml" -ProtectionPassword $TPD_Password –KeyVaultStringUrl https://contoso-byok-kv.vault.azure.net/keys/contosorms-byok/aaaabbbbcccc111122223333 -Verbose
    

    В рамках этого импорта ключ SLC импортируется и автоматически устанавливается как архивированный.

  3. После отправки каждого файла запустите Set-AipServiceKeyProperties , чтобы указать, какой импортированный ключ соответствует активному ключу SLC в кластере AD RMS.

  4. Используйте командлет Disconnect-AipServiceServiceService, чтобы отключиться от службы Azure Rights Management:

    Disconnect-AipServiceService
    

Если вам потребуется подтвердить, какой ключ клиента Azure Information Protection используется в Azure Key Vault, используйте командлет Get-AipServiceKeys Azure RMS.

Теперь вы готовы перейти к шагу 5. Активируйте службу Azure Rights Management.