Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье показано, как подключиться к Azure Key Vault с помощью клиентской библиотеки секретов Azure Key Vault для JavaScript. После подключения ваш код имеет доступ к секретам и свойствам секретов, имеющимся в хранилище.
Справочник по | APIПакет (npm) | Исходный код | библиотекиОбразцы | Предоставление отзывов
Предпосылки
- Подписка Azure — создайте бесплатную учетную запись.
- Экземпляр Azure Key Vault. Просмотрите политики доступа в Key Vault, чтобы включить разрешения, необходимые для конкретных задач, выполняемых в коде.
- LTS-версия Node.js
Настройка проекта
Откройте командную строку и перейдите в папку проекта. Измените имя папки
YOUR-DIRECTORY:cd YOUR-DIRECTORYЕсли у вас еще нет
package.jsonфайла в каталоге, инициализируйте проект, чтобы создать файл:npm init -yУстановите клиентскую библиотеку секретов Azure Key Vault для JavaScript:
npm install @azure/keyvault-secretsЕсли вы хотите использовать безпарольные подключения с помощью Microsoft Entra ID, установите библиотеку Azure Identity для JavaScript.
npm install @azure/identity
Авторизация доступа и подключение к Key Vault
Идентификатор Microsoft Entra предоставляет наиболее безопасное подключение, управляя удостоверением подключения (управляемым удостоверением). Эта функция без пароля позволяет разрабатывать приложение, которое не требует секретов (ключей или строк подключения), хранящихся в коде.
Перед программной аутентификацией в Azure для использования секретов Azure Key Vault убедитесь, что вы настроили свою среду.
Разработчик должен установить Azure CLI и войти в интерактивном режиме с помощью команды az login , чтобы войти в Azure, прежде чем использовать DefaultAzureCredential в коде.
az login
Создайте своё приложение
При создании приложения код взаимодействует с двумя типами ресурсов:
-
KeyVaultSecret, который включает:
- Имя секрета, строковое значение.
- Значение секрета, представляющее собой строку секрета. Вы выполняете сериализацию и десериализацию секретного значения в строку и из строки по мере необходимости.
- Секретные свойства
- SecretProperties, в том числе метаданные секрета, такие как имя, версия, теги, данные окончания срока действия и включена ли она.
Если вам нужно значение KeyVaultSecret, используйте методы, возвращающие KeyVaultSecret:
Остальные методы возвращают объект SecretProperties или другую форму таких свойств, как:
Создание объекта SecretClient
Объект SecretClient — это верхний объект в пакете SDK. Этот клиент позволяет управлять секретами.
После настройки ролей доступа к Azure Key Vault и локальной среды создайте файл JavaScript, включающий пакет @azure/identity . Создайте учетные данные, такие как DefaultAzureCredential, для реализации безпарольных подключений к хранилищу. Используйте эти учетные данные для проверки подлинности с помощью объекта SecretClient .
// Include required dependencies
import { DefaultAzureCredential } from '@azure/identity';
import { SecretClient } from '@azure/keyvault-secrets';
// Authenticate to Azure
const credential = new DefaultAzureCredential();
// Create SecretClient
const vaultName = '<your-vault-name>';
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
// Get secret
const secret = await client.getSecret("MySecretName");