Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Процесс безопасного выпуска ключей (SKR) с использованием Azure Key Vault (AKV) с предложениями для конфиденциальных контейнеров может осуществляться несколькими способами. Конфиденциальные контейнеры запускают гостевое просвещенное устройство AMD SEV-SNP через ядро Linux, использующее гостевое встроенное ПО с необходимыми исправлениями, связанными с Hyper-V, которые мы называем прямой загрузкой Linux (DLB). Эта платформа не использует ни vTPM, ни HCL, основанные на конфиденциальных виртуальных машинах с поддержкой AMD SEV-SNP. В этом концептуальном документе предполагается, что вы планируете запустить контейнеры в службе поддержки контейнеров Azure, выбрав номер SKU для конфиденциальных вычислений.
- Вспомогательный контейнер Sidecar, предоставляемый Azure
- Настраиваемая реализация с приложением контейнера
Вспомогательный контейнер side-Car, предоставляемый Azure
Проект с открытым исходным кодом GitHub "конфиденциальные сайдкары" содержит сведения о том, как собрать этот контейнер и какие параметры и переменные среды необходимы для подготовки и запуска этого сайдкар-контейнера. Текущая реализация автомобиля на стороне предоставляет различные ИНТЕРФЕЙСы REST API HTTP, которые контейнер основного приложения может использовать для получения ключа из AKV. Интеграция через Microsoft Azure Attestation (MAA) уже включена. Шаги для подготовки к запуску бокового контейнера SKR можно найти здесь.
Ваше основное приложение-контейнер может вызывать конечные точки веб-API сайдкара, как показано в примере ниже. Сайдкары работают в той же группе контейнеров и служат локальной конечной точкой для контейнера вашего приложения. Полные сведения об API см . здесь
Метод key/release POST ожидает JSON следующего формата:
{
"maa_endpoint": "<maa endpoint>", //https://learn.microsoft.com/en-us/azure/attestation/quickstart-portal#attestation-provider
"akv_endpoint": "<akv endpoint>", //AKV URI
"kid": "<key identifier>" //key name,
"access_token": "optional aad token if the command will run in a resource without proper managed identity assigned"
}
При успешном key/release выполнении ответ метода POST содержит StatusOK заголовок и полезные данные следующего формата:
{
"key": "<key in JSON Web Key format>"
}
При ошибке key/release ответ метода POST содержит StatusForbidden заголовок и полезные данные следующего формата:
{
"error": "<error message>"
}
Настраиваемая реализация с приложением контейнера
Чтобы запустить пользовательское приложение контейнера, расширяющее возможности Azure Key Vault (AKV) – функции безопасного выпуска ключей и аттестации Microsoft Azure (MAA), используйте приведенный ниже высокоуровневый процесс как справочный. Простой подход заключается в проверке текущего кода реализации сайдкара в этом проекте на GitHub.
- Шаг 1. Настройте AKV с экспортируемым ключом и присоедините политику выпуска. Дополнительные сведения см. здесь
- Шаг 2: Настройте управляемое удостоверение с Microsoft Entra ID и прикрепите его к AKV. Дополнительные сведения см. здесь
- Шаг 3. Развертывание приложения контейнера с необходимыми параметрами в ACI путем настройки политики принудительного применения конфиденциальных вычислений. Дополнительные сведения см. здесь
- Шаг 4. На этом шаге приложение должно получить отчет о оборудовании RAW AMD SEV-SNP, выполнив вызов сокета Linux IOCTL. Для выполнения этого действия не требуется какая-либо гостевая библиотека аттестации. Дополнительные сведения о существующей реализации сайдкара
- Шаг 5. Получение цепочки сертификатов AMD SEV-SNP для группы контейнеров. Эти сертификаты доставляются из конечной точки IMDS узла Azure. Дополнительные сведения см. здесь
- Шаг 6. Отправка отчета о оборудовании SNP RAW и сведений о сертификате в MAA для проверки и возврата утверждений. Дополнительные сведения см. здесь
- Шаг 7. Отправьте маркер MAA и маркер управляемого удостоверения, созданного в ACI, в AKV для выпуска ключа. Дополнительные сведения см. здесь
При успешном извлечении ключа из AKV можно использовать ключ для расшифровки наборов данных или шифрования данных, исходящих из конфиденциальной среды контейнера.
Ссылки
ACI с развертываниями конфиденциальных контейнеров
AKV SKR с конфиденциальной виртуальной машиной AMD SEV-SNP