Как напрямую подключить значение секретов, хранящееся в хранилище ключей Azure, к переменным среды службы приложений Azure

У меня есть хранилище ключей и служба приложений, размещенная в Azure. У меня есть секрет, хранящийся в этом хранилище ключей, и я хочу использовать его значение непосредственно в службе приложений. Я имею в виду, что я могу переопределить env. переменную со значением секрета напрямую, без каких-либо вмешательств в код, как показано на скриншоте.

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

Я пытался использовать этот шаблон @Microsoft.KeyVault(SecretUri=https://key-vault.vault.azure.net/secrets/encryption-key), чтобы получить значение, но безуспешно.

Поэтому мне нужно решение для этого, не автоматизируя поток с помощью Power автоматизировать. Мне нужно решение для Azure, которое позволит мне читать и получать значение в хранилище ключей и помещать его в env.variables службы приложений.

try to get the value but did not succeed. какую ошибку вы получаете?
Harshitha 05.07.2024 10:13
get the value in the key vault and put it in the env.variables of the app service что это значит? Можете ли вы объяснить проблему и что вы пытаетесь сделать более подробно?
Harshitha 05.07.2024 10:17

`поместите его в env.variables службы приложений`, используя параметр «Конфигурация приложения => Импорт/Экспорт», вы можете автоматически экспортировать секреты хранилища ключей в переменные среды.

Harshitha 05.07.2024 10:22
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
0
3
94
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
  • Сначала создайте свои секреты и предоставьте необходимые разрешения для доступа к хранилищу ключей.

Мой Secrets:

  • В Key Vault создайте новую политику доступа с помощью Key & Secret Management, выбрав «Принципал» в качестве имени развернутого приложения.

поместите его в env.variables службы приложений

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

  • Вам нужно ссылаться на значение только с секретным именем (не включать идентификатор идентификатора), оно получает последнее значение.

@Microsoft.KeyVault(SecretUri=https://HarshuKVJuly.vault.azure.net/secrets/SampleSecret)

  • Обратитесь к этому MSDoc, где объясняется то же самое.

  • Секрет может иметь несколько версий.

  • Если вы используете секретный идентификатор в идентификаторе, вы можете получить последнее значение, используя Pull reference values.

  • Вы можете проверить переменные среды настройки приложения в KUDU.

  • Теперь вы можете получить значение KeyVault, используя переменную среды прямо на странице .cshtml.
@page
 
@model IndexModel
@{
    ViewData["Title"] = "Home page";
    var SampleSecret = Environment.GetEnvironmentVariable("SampleSecret");
}

<div class = "text-center">
    <h1 class = "display-4">Welcome</h1>
<p>@SampleSecret</p></div>

лучший ответ, который я получил, большое спасибо

bouthayna hamdi 05.07.2024 13:06

Другие вопросы по теме

Хранилище ключей, созданное с использованием политики доступа с использованием BICEP, создает составную идентификацию
Общий доступ Azure Key Vault отключен, как получить к нему доступ через портал через Интернет
AddDataProtection().PersistKeysToAzureBlobStorage().ProtectKeysWithAzureKeyVault() получает ошибку httpVerb при доступе к хранилищу BLOB-объектов
Можно ли получить доступ к конфигурации приложений Azure через URL-адрес или каким-либо образом подключиться к настройке среды службы приложений?
Как получить доступ к секретам Azure Key Vault как *прозрачным* значениям конфигурации* в веб-приложении ASP.NET Core, которое развернуто в службах приложений Azure?
Имитируйте метод EncryptAsync и возвращайте EncryptResult из Azure.Security.KeyVault.Keys.Cryptography
Ошибка VB.NET после вызова Dim secret = Ожидайте client.GetSecretAsync
База данных SQL Azure недоступна при первой попытке подключения
Ошибка конвейера Azure DevOps: пароль не является целым числом в команде SnowSQL
Невозможно получить несколько секретов из Azure Key Vault в конвейере Azure DevOps