Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Использование API защищенного сервиса магазина
Сервис защищенного хранилища позволяет хранить конфиденциальные данные, такие как учетные данные безопасности для внутренних служб, в зашифрованном формате, чтобы защитить их от несанкционированного использования. Эти защищенные области хранения называются «хранилищами» и могут быть ограничены уровнем организации или уровнем среды в Apigee Edge.
Например, защищенное хранилище может использоваться для хранения пароля, необходимого приложению Node.js для доступа к защищенному ресурсу, такому как сервер базы данных. Вы можете сохранить пароль в защищенном хранилище через API до развертывания, и приложение сможет получить его значение во время выполнения.
Благодаря этому отпадает необходимость включать пароль в систему контроля версий или развертывать его вместе с исходным кодом Node.js в Apigee Edge. Вместо этого Apigee хранит значение в зашифрованном виде, и оно будет извлечено только тогда, когда это потребуется приложению.
Документацию по API защищенного хранилища см. в разделе «Хранилища» . В следующих разделах также представлен обзор использования API защищенного хранилища.
Хранение данных по организациям
Каждая организация Apigee Edge имеет набор защищенных хранилищ, а каждая среда — дополнительное хранилище. Таким образом, организации с различными требованиями к безопасности для разных бэкэндов могут хранить разные защищенные значения. В этом разделе описывается хранение данных по организациям.
Использование
- Получите названия всех защищенных хранилищ:
GET /o/{organization}/vaults
- Получить список записей (но не их зашифрованные значения) из именованного хранилища.
GET /o/{organization}/vaults/{name}
Получить одну запись (но не её зашифрованное значение).
GET /o/{organization}/vaults/{name}/entries/{entryname}
Создайте новое хранилище с именем "name" без значений:
POST /o/{organization}/vaults { "name": "{name}" } curl https://api.enterprise.apigee.com/v1/o/testorg/vaults -H "Content-Type: application/json" -d '{"name": "test2" }' -X POST
Создайте новую запись в хранилище с указанным именем и защищаемым значением.
POST /o/{organization}/vaults/{vaultname}/entries { "name": "{entryname}", "value": "{securevalue}" } curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries -H "Content-Type: application/json" -d '{"name": "value1", "value": "verysecret" }' -X POST
Замените значение указанной записи новым значением:
PUT /o/{organization}/vaults/{vaultname}/entries/{entryname} curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries/value1 -d 'verymoresecret' -X PUT
Возвращает «true», если указанное значение совпадает с тем, что уже есть в хранилище, и «false», если не совпадает. В обоих случаях используется HTTP-код состояния 200. Это можно использовать для проверки содержимого хранилища. Обратите внимание, что после сохранения нет API для получения незашифрованного значения:
POST /o/{organization}/vaults/{vaultname}/entries/{entryname}?action=verify curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries/value1?action=verify -d 'verymoresecret' -X POST
- Удалите указанную запись в хранилище:
DELETE /o/{organization}/vaults/{vaultname}/entries/{entryname}
Удалите всё хранилище.
DELETE /o/{organization}/vaults/{name}
Хранение данных по средам
Также можно хранить данные в зависимости от среды Apigee Edge. В этом случае данные ограничены определенной средой (например, "prod"). Благодаря этой функции во время выполнения можно сохранять разные значения в зависимости от того, где выполняется скрипт Node.js.
Использование
GET /o/{organization}/e/{env}/vaults GET /o/{organization}/e/{env}/vaults/{name} GET /o/{organization}/e/{env}/vaults/{name}/entries/{entryname} POST /o/{organization}/e/{env}/vaults POST /o/{organization}/e/{env}/vaults/{vaultname}/entries PUT /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname} POST /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname}?action=verify DELETE /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname} DELETE /o/{organization}/e/{env}/vaults/{name}
Получение значений из защищенного хранилища в Node.js
Установка apigee-access
Чтобы использовать apigee-access в коде Node.js, необходимо сначала его установить. Например:
- Перейдите в корневой каталог вашего проекта.
- Выполните команду:
npm install apigee-access --save
Функции
Функция `apigee-access getVault()` используется для получения доступа к конкретному хранилищу, либо для всей организации, либо в зависимости от текущей среды, в которой выполняется код Node.js.
Функция getVault() принимает два параметра:
- Название защищенного хранилища, из которого необходимо получить данные.
- Область охвата может включать
organizationилиenvironment. Если не указано иное, подразумеваетсяorganization.
Объект, возвращаемый функцией getVault(), имеет две функции:
- getKeys(callback) : Возвращает массив, содержащий имена всех ключей в указанном хранилище. Функция обратного вызова будет вызвана с двумя аргументами: ошибкой, если операция не удалась, или "undefined", если операция прошла успешно, и самим массивом в качестве второго аргумента.
- get(key, callback) : Возвращает защищенное значение, связанное с конкретным ключом. Функция обратного вызова будет вызвана с двумя аргументами: ошибкой, если операция не удалась, или "undefined", если она прошла успешно, и фактическим значением в качестве второго аргумента.
Пример
Вот пример кода на Node.js, демонстрирующий, как получить значение из хранилища. Для работы этого кода установлен модуль apigee-access , как объяснялось ранее.
var apigee = require('apigee-access'); var orgVault = apigee.getVault('vault1', 'organization'); orgVault.get('key1', function(err, secretValue) { // use the secret value here });
Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Использование API защищенного сервиса магазина
Сервис защищенного хранилища позволяет хранить конфиденциальные данные, такие как учетные данные безопасности для внутренних служб, в зашифрованном формате, чтобы защитить их от несанкционированного использования. Эти защищенные области хранения называются «хранилищами» и могут быть ограничены уровнем организации или уровнем среды в Apigee Edge.
Например, защищенное хранилище может использоваться для хранения пароля, необходимого приложению Node.js для доступа к защищенному ресурсу, такому как сервер базы данных. Вы можете сохранить пароль в защищенном хранилище через API до развертывания, и приложение сможет получить его значение во время выполнения.
Благодаря этому отпадает необходимость включать пароль в систему контроля версий или развертывать его вместе с исходным кодом Node.js в Apigee Edge. Вместо этого Apigee хранит значение в зашифрованном виде, и оно будет извлечено только тогда, когда это потребуется приложению.
Документацию по API защищенного хранилища см. в разделе «Хранилища» . В следующих разделах также представлен обзор использования API защищенного хранилища.
Хранение данных по организациям
Каждая организация Apigee Edge имеет набор защищенных хранилищ, а каждая среда — дополнительное хранилище. Таким образом, организации с различными требованиями к безопасности для разных бэкэндов могут хранить разные защищенные значения. В этом разделе описывается хранение данных по организациям.
Использование
- Получите названия всех защищенных хранилищ:
GET /o/{organization}/vaults
- Получить список записей (но не их зашифрованные значения) из именованного хранилища.
GET /o/{organization}/vaults/{name}
Получить одну запись (но не её зашифрованное значение).
GET /o/{organization}/vaults/{name}/entries/{entryname}
Создайте новое хранилище с именем "name" без значений:
POST /o/{organization}/vaults { "name": "{name}" } curl https://api.enterprise.apigee.com/v1/o/testorg/vaults -H "Content-Type: application/json" -d '{"name": "test2" }' -X POST
Создайте новую запись в хранилище с указанным именем и защищаемым значением.
POST /o/{organization}/vaults/{vaultname}/entries { "name": "{entryname}", "value": "{securevalue}" } curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries -H "Content-Type: application/json" -d '{"name": "value1", "value": "verysecret" }' -X POST
Замените значение указанной записи новым значением:
PUT /o/{organization}/vaults/{vaultname}/entries/{entryname} curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries/value1 -d 'verymoresecret' -X PUT
Возвращает «true», если указанное значение совпадает с тем, что уже есть в хранилище, и «false», если не совпадает. В обоих случаях используется HTTP-код состояния 200. Это можно использовать для проверки содержимого хранилища. Обратите внимание, что после сохранения нет API для получения незашифрованного значения:
POST /o/{organization}/vaults/{vaultname}/entries/{entryname}?action=verify curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries/value1?action=verify -d 'verymoresecret' -X POST
- Удалите указанную запись в хранилище:
DELETE /o/{organization}/vaults/{vaultname}/entries/{entryname}
Удалите всё хранилище.
DELETE /o/{organization}/vaults/{name}
Хранение данных по средам
Также можно хранить данные в зависимости от среды Apigee Edge. В этом случае данные ограничены определенной средой (например, "prod"). Благодаря этой функции во время выполнения можно сохранять разные значения в зависимости от того, где выполняется скрипт Node.js.
Использование
GET /o/{organization}/e/{env}/vaults GET /o/{organization}/e/{env}/vaults/{name} GET /o/{organization}/e/{env}/vaults/{name}/entries/{entryname} POST /o/{organization}/e/{env}/vaults POST /o/{organization}/e/{env}/vaults/{vaultname}/entries PUT /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname} POST /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname}?action=verify DELETE /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname} DELETE /o/{organization}/e/{env}/vaults/{name}
Получение значений из защищенного хранилища в Node.js
Установка apigee-access
Чтобы использовать apigee-access в коде Node.js, необходимо сначала его установить. Например:
- Перейдите в корневой каталог вашего проекта.
- Выполните команду:
npm install apigee-access --save
Функции
Функция `apigee-access getVault()` используется для получения доступа к конкретному хранилищу, либо для всей организации, либо в зависимости от текущей среды, в которой выполняется код Node.js.
Функция getVault() принимает два параметра:
- Название защищенного хранилища, из которого необходимо получить данные.
- Область охвата может включать
organizationилиenvironment. Если не указано иное, подразумеваетсяorganization.
Объект, возвращаемый функцией getVault(), имеет две функции:
- getKeys(callback) : Возвращает массив, содержащий имена всех ключей в указанном хранилище. Функция обратного вызова будет вызвана с двумя аргументами: ошибкой, если операция не удалась, или "undefined", если операция прошла успешно, и самим массивом в качестве второго аргумента.
- get(key, callback) : Возвращает защищенное значение, связанное с конкретным ключом. Функция обратного вызова будет вызвана с двумя аргументами: ошибкой, если операция не удалась, или "undefined", если она прошла успешно, и фактическим значением в качестве второго аргумента.
Пример
Вот пример кода на Node.js, демонстрирующий, как получить значение из хранилища. Для работы этого кода установлен модуль apigee-access , как объяснялось ранее.
var apigee = require('apigee-access'); var orgVault = apigee.getVault('vault1', 'organization'); orgVault.get('key1', function(err, secretValue) { // use the secret value here });