Azure Key Vault основные понятияAzure Key Vault basic concepts

Azure Key Vault — это облачная служба для безопасного хранения секретов и доступа к ним.Azure Key Vault is a cloud service for securely storing and accessing secrets. Секрет — это все, что необходимо для строгого управления доступом к, таким как ключи API, пароли, сертификаты или криптографические ключи.A secret is anything that you want to tightly control access to, such as API keys, passwords, certificates, or cryptographic keys. Служба Key Vault поддерживает контейнеры двух типов: хранилища и управляемые пулы HSM.Key Vault service supports two types of containers: vaults and managed HSM pools. Хранилища поддерживают хранение ключей, секретных кодов и сертификатов программного обеспечения и АППАРАТных средств.Vaults support storing software and HSM-backed keys, secrets, and certificates. Управляемые пулы HSM поддерживают только ключи, поддерживающие HSM.Managed HSM pools only support HSM-backed keys. Подробные сведения см. в разделе обзор Azure Key Vault REST API .See Azure Key Vault REST API overview for complete details.

Ниже приведены другие важные термины.Here are other important terms:

  • Клиент. Это организация, которая владеет и управляет определенным экземпляром облачных служб Майкрософт.Tenant: A tenant is the organization that owns and manages a specific instance of Microsoft cloud services. Чаще всего он используется для ссылки на набор служб Azure и Microsoft 365 для Организации.It's most often used to refer to the set of Azure and Microsoft 365 services for an organization.

  • Владелец хранилища. Он может создать хранилище ключей, получить полный доступ и контроль над ним.Vault owner: A vault owner can create a key vault and gain full access and control over it. Владелец хранилища имеет доступ к секретам и ключам, а также может настроить аудит журнала.The vault owner can also set up auditing to log who accesses secrets and keys. Администраторы могут управлять жизненным циклом ключей.Administrators can control the key lifecycle. Он может откатить ключ до новой версии, создать ее резервную копию и выполнять другие связанные задачи.They can roll to a new version of the key, back it up, and do related tasks.

  • Объект-получатель хранилища. Он может выполнять действия в ресурсах хранилища ключей, когда владелец хранилища предоставляет пользовательский доступ.Vault consumer: A vault consumer can perform actions on the assets inside the key vault when the vault owner grants the consumer access. Доступные действия зависят от предоставленных разрешений.The available actions depend on the permissions granted.

  • Управляемые АДМИНИСТРАТОРЫ HSM. Пользователи, которым назначена роль администратора, имеют полный контроль над управляемым пулом HSM.Managed HSM Administrators: Users who are assigned the Administrator role have complete control over a Managed HSM pool. Они могут создавать больше назначений ролей для делегирования управляемого доступа другим пользователям.They can create more role assignments to delegate controlled access to other users.

  • Управляемый Поддиректор по шифрованию HSM/пользователь: встроенные роли, которые обычно назначаются пользователям или субъектам-службам, которые будут выполнять криптографические операции с помощью ключей в управляемом HSM.Managed HSM Crypto Officer/User: Built-in roles that are usually assigned to users or service principals that will perform cryptographic operations using keys in Managed HSM. Пользователь шифрования может создавать новые ключи, но не может удалять ключи.Crypto User can create new keys, but cannot delete keys.

  • Управляемое шифрование криптографической службы HSM: встроенная роль, которая обычно назначается управляемому удостоверению службы учетных записей служб (например, учетная запись хранения) для шифрования неактивных данных с помощью управляемого клиентом ключа.Managed HSM Crypto Service Encryption: Built-in role that is usually assigned to a service accounts managed service identity (e.g. Storage account) for encryption of data at rest with customer managed key.

  • Ресурс. Это управляемый элемент, доступный в Azure.Resource: A resource is a manageable item that's available through Azure. Распространенными примерами являются виртуальная машина, учетная запись хранения, веб-приложение, база данных и виртуальная сеть.Common examples are virtual machine, storage account, web app, database, and virtual network. Существует много других.There are many more.

  • Группа ресурсов. Это контейнер, содержащий связанные ресурсы для решения Azure.Resource group: A resource group is a container that holds related resources for an Azure solution. В группу ресурсов могут входить все ресурсы приложения или только те, которыми необходимо управлять совместно.The resource group can include all the resources for the solution, or only those resources that you want to manage as a group. Пользователи могут выбрать оптимальный для своей организации способ распределения ресурсов в группах ресурсов.You decide how you want to allocate resources to resource groups, based on what makes the most sense for your organization.

  • Субъект безопасности. субъект безопасности Azure — это удостоверение безопасности, которое созданные пользователем приложения, службы и средства автоматизации используют для доступа к конкретным ресурсам Azure.Security principal: An Azure security principal is a security identity that user-created apps, services, and automation tools use to access specific Azure resources. Его следует рассматривать как "удостоверение пользователя" (имя пользователя и пароль или сертификат) с определенной ролью и жестко управляемыми разрешениями.Think of it as a "user identity" (username and password or certificate) with a specific role, and tightly controlled permissions. Субъект безопасности должен выполнять только определенные действия, в отличие от общего удостоверения пользователя.A security principal should only need to do specific things, unlike a general user identity. Она повышает безопасность, если предоставить ей только минимальный уровень разрешений, необходимый для выполнения задач управления.It improves security if you grant it only the minimum permission level that it needs to perform its management tasks. Субъект безопасности, используемый с приложением или службой, в частности называется субъектом-службой.A security principal used with an application or service is specifically called a service principal.

  • Azure Active Directory (Azure AD). Это служба Active Directory для клиента.Azure Active Directory (Azure AD): Azure AD is the Active Directory service for a tenant. Каждый каталог содержит один или несколько доменов.Each directory has one or more domains. Каталог может иметь много подписок, связанных с ним, но только один клиент.A directory can have many subscriptions associated with it, but only one tenant.

  • Идентификатор клиента Azure. Это уникальный способ идентификации экземпляра Azure AD в пределах подписки Azure.Azure tenant ID: A tenant ID is a unique way to identify an Azure AD instance within an Azure subscription.

  • Управляемые удостоверения. Azure Key Vault предоставляет способ безопасного хранения учетных данных и других ключей и секретов, но для их получения код должен пройти проверку подлинности в Key Vault.Managed identities: Azure Key Vault provides a way to securely store credentials and other keys and secrets, but your code needs to authenticate to Key Vault to retrieve them. Управляемое удостоверение упрощает решение этой задачи, предоставляя службам Azure автоматически управляемое удостоверение в Azure AD.Using a managed identity makes solving this problem simpler by giving Azure services an automatically managed identity in Azure AD. Это удостоверение можно использовать для аутентификации хранилища ключей или любой службы, которая поддерживает аутентификацию Azure AD, не храня какие-либо учетные данные в коде.You can use this identity to authenticate to Key Vault or any service that supports Azure AD authentication, without having any credentials in your code. Дополнительные сведения см. на следующем рисунке и в обзоре управляемых удостоверений для ресурсов Azure.For more information, see the following image and the overview of managed identities for Azure resources.

АутентификацияAuthentication

Для выполнения любых операций с Key Vault необходимо сначала пройти проверку подлинности.To do any operations with Key Vault, you first need to authenticate to it. Существует три способа проверки подлинности в Key Vault.There are three ways to authenticate to Key Vault:

  • Управляемые удостоверения для ресурсов Azure. при развертывании приложения на виртуальной машине в Azure можно назначить удостоверение виртуальной машине, имеющей доступ к Key Vault.Managed identities for Azure resources: When you deploy an app on a virtual machine in Azure, you can assign an identity to your virtual machine that has access to Key Vault. Вы также можете назначить удостоверения другим ресурсам Azure.You can also assign identities to other Azure resources. Преимуществом этого подхода является то, что приложение или служба не управляют поворотом первого секрета.The benefit of this approach is that the app or service isn't managing the rotation of the first secret. Azure автоматически меняет удостоверение.Azure automatically rotates the identity. Рекомендуется использовать такой подход.We recommend this approach as a best practice.
  • Субъект-служба и сертификат. можно использовать субъект службы и связанный сертификат, который имеет доступ к Key Vault.Service principal and certificate: You can use a service principal and an associated certificate that has access to Key Vault. Мы не рекомендуем использовать этот подход, так как владелец приложения или разработчик должен поворачивать сертификат.We don't recommend this approach because the application owner or developer must rotate the certificate.
  • Субъект-служба и секретный код. Несмотря на то, что для проверки подлинности в Key Vault можно использовать субъект службы и секрет, он не рекомендуется.Service principal and secret: Although you can use a service principal and a secret to authenticate to Key Vault, we don't recommend it. Трудно автоматически сменить секрет начальной загрузки, который используется для проверки подлинности в Key Vault.It's hard to automatically rotate the bootstrap secret that's used to authenticate to Key Vault.

Роли Key VaultKey Vault roles

Используйте таблицу ниже, чтобы лучше понять, как хранилище ключей может помочь в удовлетворении требований разработчиков и администраторов безопасности.Use the following table to better understand how Key Vault can help to meet the needs of developers and security administrators.

РольRole ПроблемаProblem statement Решение с помощью хранилища ключей AzureSolved by Azure Key Vault
Разработчик приложения AzureDeveloper for an Azure application "Я хочу написать приложение для Azure, использующее ключи для подписывания и шифрования."I want to write an application for Azure that uses keys for signing and encryption. Но я хочу, чтобы эти ключи были внешними из моего приложения, чтобы решение было пригодным для географически распределенного приложения.But I want these keys to be external from my application so that the solution is suitable for an application that's geographically distributed.

Необходимо, чтобы эти ключи и секреты были защищены и не нужно было писать код самостоятельно,I want these keys and secrets to be protected, without having to write the code myself. Я также хочу, чтобы эти ключи и секреты были легко использованы в моих приложениях с оптимальной производительностью».I also want these keys and secrets to be easy for me to use from my applications, with optimal performance."
√ Ключи хранятся в хранилище, и при необходимости их можно вызывать с помощью URI.√ Keys are stored in a vault and invoked by URI when needed.

√ Azure защищает ключи с использованием стандартных отраслевых алгоритмов, методов управления длиной ключей и аппаратных модулей безопасности.√ Keys are safeguarded by Azure, using industry-standard algorithms, key lengths, and hardware security modules.

√ Ключи обрабатываются в аппаратных модулях безопасности, которые находятся в тех же центрах обработки данных Azure, что и приложения.√ Keys are processed in HSMs that reside in the same Azure datacenters as the applications. Это обеспечивает более высокую надежность и менее длительную задержку, чем при расположении ключей в другом месте, например в локальной среде.This method provides better reliability and reduced latency than keys that reside in a separate location, such as on-premises.
Разработчик программного обеспечения как услуги (SaaS)Developer for software as a service (SaaS) "Я не хочу ответственности за ключи и секреты клиента для моих клиентов."I don't want the responsibility or potential liability for my customers' tenant keys and secrets.

Я хочу, чтобы клиенты владеют своими ключами и управляли ими, чтобы я мог сосредоточиться на том, что я делаю лучше, что предоставляет основные функции программного обеспечения».I want customers to own and manage their keys so that I can concentrate on doing what I do best, which is providing the core software features."
√ Клиенты могут импортировать свои ключи в Azure и управлять ими.√ Customers can import their own keys into Azure, and manage them. Если приложению SaaS требуется выполнять криптографические операции с помощью ключей клиентов, Key Vault выполняет эти операции от имени приложения.When a SaaS application needs to perform cryptographic operations by using customers' keys, Key Vault does these operations on behalf of the application. Приложение не увидит ключи клиентов.The application does not see the customers' keys.
Руководитель службы безопасностиChief security officer (CSO) «Я хочу узнать, что наши приложения соответствуют стандарту FIPS 140-2 уровня 2 или FIPS 140-2 уровня 3 HSM для безопасного управления ключами."I want to know that our applications comply with FIPS 140-2 Level 2 or FIPS 140-2 Level 3 HSMs for secure key management.

Я также хочу убедиться, что моя организация может управлять жизненным циклом ключей и отслеживать их использование.I want to make sure that my organization is in control of the key lifecycle and can monitor key usage.

Хотя мы используем несколько служб и ресурсов Azure, я хочу управлять ключами из одного места в Azure. "And although we use multiple Azure services and resources, I want to manage the keys from a single location in Azure."
√ Выберите хранилища для FIPS 140-2 уровня 2 проверенный HSM.√ Choose vaults for FIPS 140-2 Level 2 validated HSMs.
√ Выберите управляемые ПУЛЫ HSM для проверенного HSM уровня 2 FIPS 140-2.√ Choose managed HSM pools for FIPS 140-2 Level 3 validated HSMs.

√ Хранилище ключей разработано таким образом, чтобы сотрудники Майкрософт не могли видеть или извлекать ваши ключи.√ Key Vault is designed so that Microsoft does not see or extract your keys.
√ Использование ключа протоколируется почти в реальном времени.√ Key usage is logged in near real time.

√ Хранилище предоставляет единый интерфейс, независимо от количества хранилищ в Azure, поддерживаемых регионов и использующих их приложений.√ The vault provides a single interface, regardless of how many vaults you have in Azure, which regions they support, and which applications use them.

Хранилища ключей может создавать и использовать любой пользователь, у которого есть подписка Azure.Anybody with an Azure subscription can create and use key vaults. Хотя Key Vault преимущества разработчиков и администраторов безопасности, их можно реализовать и управлять администратором организации, который управляет другими службами Azure.Although Key Vault benefits developers and security administrators, it can be implemented and managed by an organization's administrator who manages other Azure services. Например, этот администратор может войти в систему с помощью подписки Azure, создать хранилище для Организации, в которой будут храниться ключи, а затем отвечать на такие задачи, как:For example, this administrator can sign in with an Azure subscription, create a vault for the organization in which to store keys, and then be responsible for operational tasks like these:

  • создание или импорт ключа или секрета;Create or import a key or secret
  • отзыв или удаление ключа или секрета;Revoke or delete a key or secret
  • авторизация пользователей или приложений для доступа к хранилищу ключей с целью управления ключами и секретами или их использования;Authorize users or applications to access the key vault, so they can then manage or use its keys and secrets
  • настройка использования ключей (например, подписи и шифрования);Configure key usage (for example, sign or encrypt)
  • мониторинг использования ключей.Monitor key usage

Затем этот администратор предоставляет разработчикам универсальные коды ресурса (URI) для вызова из своих приложений.This administrator then gives developers URIs to call from their applications. Этот администратор также предоставляет администратору безопасности сведения о ведении журнала использования ключа.This administrator also gives key usage logging information to the security administrator.

Общие сведения о работе хранилища Azure Key Vault

Разработчики также могут управлять ключами напрямую с помощью API.Developers can also manage the keys directly, by using APIs. Дополнительные сведения см. в Key Vaultном руководством разработчика.For more information, see the Key Vault developer's guide.

Дальнейшие действияNext steps

Хранилище ключей Azure доступно в большинстве регионов.Azure Key Vault is available in most regions. Дополнительные сведения см. на странице цен на хранилище ключей.For more information, see the Key Vault pricing page.