Использование управляемого удостоверения с Bridge to Kubernetes
Если кластер AKS использует функции безопасности управляемого удостоверения для безопасного доступа к секретам и ресурсам, для Bridge to Kubernetes требуется специальная настройка, чтобы обеспечить возможность работы с этими функциями. На локальный компьютер необходимо загрузить маркер Azure Active Directory (AD), чтобы обеспечить надлежащую защиту выполнения и отладки в локальной среде, а для этого требуется специальная настройка Bridge to Kubernetes. В этой статье показано, как настроить Bridge to Kubernetes для работы со службами, использующими управляемое удостоверение.
Настройка службы для использования управляемого удостоверения
Чтобы включить локальный компьютер с поддержкой управляемого удостоверения, в файле KubernetesLocalConfig.yaml в разделе enableFeatures
добавьте ManagedIdentity
. Добавьте раздел enableFeatures
, если он еще не создан.
enableFeatures:
- ManagedIdentity
Предупреждение
Используйте управляемое удостоверение для Bridge to Kubernetes только с кластерами разработки, а не с рабочими кластерами, так как маркер Azure AD размещается на локальном компьютере, что представляет потенциальную угрозу безопасности.
Если у вас нет файла KubernetesLocalConfig.yaml, его можно создать: см. раздел Настройка Bridge to Kubernetes.
Получение маркеров Azure Active Directory
Необходимо убедиться, что вы используете Azure.Identity.DefaultAzureCredential
или Azure.Identity.ManagedIdentityCredential
в коде при получении маркера.
В следующем коде C# показано, как получить учетные данные учетной записи хранения при использовании ManagedIdentityCredential
:
var credential = new ManagedIdentityCredential(miClientId);
Console.WriteLine("Created credential");
var containerClient = new BlobContainerClient(new Uri($"https://{accountName}.blob.windows.net/{containerName}"), credential);
Console.WriteLine("Created blob client");
В следующем коде показано, как получить учетные данные учетной записи хранения при использовании DefaultAzureCredential:
var credential = new DefaultAzureCredential();
Console.WriteLine("Created credential");
var containerClient = new BlobContainerClient(new Uri($"https://{accountName}.blob.windows.net/{containerName}"), credential);
Console.WriteLine("Created blob client");
Сведения о том, как получить доступ к другим ресурсам Azure с помощью управляемого удостоверения, см. в разделе Дальнейшие действия.
Получение оповещений Azure при загрузка маркеров
Всякий раз, когда Bridge to Kubernetes используется со службой, маркер Azure AD загружается на локальный компьютер. Чтобы получать уведомления, когда это происходит, вы можете включить оповещения Azure. Дополнительные сведения см. в статье Включение Azure Defender. Имейте в виду, что плата взимается по истечении 30-дневного пробного периода.
Дальнейшие действия
Теперь, когда Bridge to Kubernetes настроен для работы с кластером AKS, использующим управляемое удостоверение, можно выполнить отладку в нормальном режиме. См. раздел [bridge-to-kubernetes.md#connect-to-your-cluster-and-debug-a-service].
Дополнительные сведения об использовании управляемого удостоверения для доступа к ресурсам Azure см. в следующих руководствах:
- Руководство по Использование назначаемого системой управляемого удостоверения на виртуальной машине Linux для доступа к службе хранилища Azure
- Руководство по Использование назначаемого системой управляемого удостоверения на виртуальной машине Linux для доступа к Azure Data Lake Storage
- Руководство по Использование назначаемого системой управляемого удостоверения на виртуальной машине Linux для доступа к Azure Key Vault
В этом разделе также приводятся другие руководства по использованию управляемого удостоверения для доступа к другим ресурсам Azure.