Внимание
При использовании модели разрешений политики доступа пользователь с Contributor
Key Vault Contributor
любой другой ролью, включающей Microsoft.KeyVault/vaults/write
разрешения для плоскости управления хранилища ключей, может предоставить себе доступ к плоскости данных, задав политику доступа Key Vault. Чтобы предотвратить несанкционированный доступ и управление хранилищами ключей, ключами, секретами и сертификатами, необходимо ограничить доступ роли участника к хранилищам ключей в модели разрешений политики доступа. Чтобы устранить этот риск, рекомендуется использовать модель разрешений на основе ролей контроль доступа (RBAC), которая ограничивает управление разрешениями ролями "Владелец" и "Администратор доступа пользователей", что позволяет четко разделить операции безопасности и административные обязанности. Дополнительные сведения см. в руководстве по RBAC Key Vault и что такое Azure RBAC?
Политика доступа Key Vault определяет, может ли данный субъект безопасности, а именно пользователь, приложение или группа пользователей, выполнять различные операции с секретами, ключами и сертификатами Key Vault. Политики доступа можно назначать с помощью портала Azure, Azure CLI или Azure PowerShell.
Хранилище ключей поддерживает до 1024 политик доступа, при этом каждая запись предоставляет отдельный набор разрешений для определенного субъекта безопасности. Из-за этого ограничения рекомендуется назначать политики доступа группам пользователей там, где это возможно, а не отдельным пользователям. Использование групп значительно упрощает управление разрешениями для нескольких пользователей в организации. Дополнительные сведения см. в разделе "Управление доступом к приложениям и ресурсам" с помощью групп Microsoft Entra.
Назначение политики доступа
На портале Azure перейдите к ресурсу Key Vault.
Выберите политики доступа, а затем нажмите кнопку "Создать".

Выберите необходимые разрешения в разделе "Разрешения ключа", "Разрешения секрета" и "Сертификаты".

В области выбора субъекта введите имя пользователя, приложения или субъекта-службы в поле поиска и выберите соответствующий результат.

Если вы используете для приложения управляемое удостоверение, найдите и выберите имя приложения. (Дополнительные сведения о субъектах безопасности см. в разделе Проверка подлинности с помощью Key Vault.
Просмотрите изменения политики доступа и нажмите кнопку "Создать ", чтобы сохранить политику доступа.

Вернитесь на страницу политик доступа, убедитесь, что указана политика доступа.

Дополнительные сведения о создании групп в идентификаторе Microsoft Entra с помощью Azure CLI см. в статье az ad group create and az ad group member add.
Для локального выполнения команд Azure CLI установите Azure CLI.
Для выполнения команд непосредственно в облаке используйте Azure Cloud Shell.
Только локальный CLI — войдите в Azure с помощью az login
:
az login
При необходимости команда az login
открывает окно браузера для ввода учетных данных.
Получение идентификатора объекта
Определите идентификатор объекта приложения, группы или пользователя, которому необходимо назначить политику доступа:
Приложения и другие субъекты-службы: для получения субъектов-служб используйте команду az ad sp list. Проверьте выходные данные команды, чтобы определить идентификатор объекта субъекта безопасности, которому необходимо назначить политику доступа.
az ad sp list --show-mine
Группы. Используйте команду az ad group list, чтобы отфильтровать результаты с помощью параметра --display-name
:
az ad group list --display-name <search-string>
Пользователи. Используйте команду az ad user show, передающую адрес электронной почты пользователя в параметр --id
:
az ad user show --id <email-address-of-user>
Назначение политики доступа
Чтобы назначить нужные разрешения, используйте команду az keyvault set-policy:
az keyvault set-policy --name myKeyVault --object-id <object-id> --secret-permissions <secret-permissions> --key-permissions <key-permissions> --certificate-permissions <certificate-permissions>
Замените <object-id>
идентификатором объекта субъекта безопасности.
При назначении разрешений для этих конкретных типов необходимо включить только --secret-permissions
, --key-permissions
и --certificate-permissions
. Допустимые значения для <secret-permissions>
, <key-permissions>
и <certificate-permissions>
приведены в документации az keyvault set-policy.
Дополнительные сведения о создании групп в идентификаторе Microsoft Entra с помощью Azure PowerShell см. в статье New-AzADGroup и Add-AzADGroupMember.
Для локального выполнения команд установите Azure PowerShell, если еще не сделали этого.
Для выполнения команд непосредственно в облаке используйте Azure Cloud Shell.
Только локальное средство PowerShell:
Установите модуль PowerShell для Azure Active Directory.
Войдите в Azure.
Connect-AzAccount
Получение идентификатора объекта
Определите идентификатор объекта приложения, группы или пользователя, которому необходимо назначить политику доступа:
Приложения и другие субъекты-службы: используйте командлет Get-AzADServicePrincipal с параметром -SearchString
, чтобы отфильтровать результаты по имени нужного субъекта-службы:
Get-AzADServicePrincipal -SearchString <search-string>
Группы: используйте командлет Get-AzADGroup с параметром -SearchString
, чтобы отфильтровать результаты по имени нужной группы:
Get-AzADGroup -SearchString <search-string>
В выходных данных идентификатор объекта указывается как Id
.
Пользователи: используйте командлет Get-AzADUser, передав адрес электронной почты пользователя в параметр -UserPrincipalName
.
Get-AzAdUser -UserPrincipalName <email-address-of-user>
В выходных данных идентификатор объекта указывается как Id
.
Назначение политики доступа
Чтобы назначить политику доступа, используйте командлет Set-AzKeyVaultAccessPolicy:
Set-AzKeyVaultAccessPolicy -VaultName <key-vault-name> -ObjectId <Id> -PermissionsToSecrets <secrets-permissions> -PermissionsToKeys <keys-permissions> -PermissionsToCertificates <certificate-permissions
При назначении разрешений для этих конкретных типов необходимо включить только -PermissionsToSecrets
, -PermissionsToKeys
и -PermissionsToCertificates
. Допустимые значения для <secret-permissions>
, <key-permissions>
и <certificate-permissions>
приведены в документе Set-AzKeyVaultAccessPolicy - Parameters.
Следующие шаги