Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Для доступа к Edge API из вашей учетной записи Edge for the Cloud вы можете использовать базовую аутентификацию. При использовании базовой аутентификации вы передаете свои учетные данные (адрес электронной почты и пароль вашей учетной записи Apigee) в каждом запросе к Edge API.
Базовая аутентификация — наименее безопасный из поддерживаемых механизмов аутентификации. Ваши учетные данные не шифруются и не хешируются; они кодируются только в формате Base64. Вместо базовой аутентификации Apigee рекомендует использовать OAuth2 или SAML для доступа к Edge API.
Формат базовой аутентификации
Вы можете передавать свои учетные данные в виде заголовка, закодированного в Base64, или в качестве параметров в HTTP-клиенте.
При передаче учетных данных в заголовке необходимо закодировать их в формате Base64. Ниже приведен пример закодированного заголовка HTTP Basic Authentication:
Authorization: Basic YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo
При использовании такого клиента, как curl , вы передаете свои учетные данные с помощью опции -u , как показано в следующем примере:
curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u email_address:password
curl кодирует ваш адрес электронной почты и пароль и добавляет их в заголовок Authorization запроса.
Если вы не укажете пароль, вам будет предложено его ввести.
Обратите внимание, что при вызовах Edge API необходимо использовать адрес электронной почты вашей учетной записи Apigee, а не имя пользователя.
Получите доступ к Edge API с помощью curl.
Вы также можете вручную установить заголовок Authorization при использовании curl для доступа к Edge API.
curl , как указано выше, кодирует ваши учетные данные, могут быть случаи, когда вы не захотите вводить незакодированные учетные данные в историю команд. Чтобы вручную установить заголовки и получить доступ к Edge API с помощью curl :
- Закодируйте свой адрес электронной почты и пароль в Base64 с помощью такого инструмента, как
base64. Например:read -es PASSecho -n ahamilton@apigee.com:$PASS | base64Инструмент
base64возвращает закодированную строку:YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo=
- Добавьте закодированную строку в заголовок
Authorizationв вашем запросе к Edge API, как показано в следующем примере:read -es PASSBASIC=$(echo -n ahamilton@apigee.com:$PASS | base64curl -H "Authorization: Basic $BASIC" \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval { "createdAt" : 1491854501264, "createdBy" : "noreply_iops@apigee.com", "displayName" : "ahamilton", "environments" : [ "prod", "test" ], "lastModifiedAt" : 1491854501264, "lastModifiedBy" : "noreply_iops@apigee.com", "name" : "ahamilton", "properties" : { "property" : [ { "name" : "features.isSmbOrganization", "value" : "false" }, { "name" : "features.isCpsEnabled", "value" : "true" } ] }, "type" : "trial" }
Этот запрос получает подробную информацию об организации "ahamilton-eval". Полный список конечных точек Edge API см. в справочнике Apigee Edge API .
В каждый запрос необходимо включать заголовок Authorization .
Отключить базовую аутентификацию
Вы можете отключить базовую аутентификацию (при условии, что включены OAuth2 или SAML), отправив запрос в службу поддержки Apigee Edge .
Рекомендации по написанию сценариев
В некоторых ситуациях сбор пароля во время выполнения скрипта нецелесообразен. Например, может потребоваться запуск задания cron, которое срабатывает, когда нет администраторов. В таких случаях необходимо предоставить скрипту доступ к паролю без участия человека.
Следуйте этим рекомендациям:
- Централизуйте учетные данные в одном файле, который будет использоваться в качестве исходного кода для программ и скриптов, которые вы пишете.
- Максимально защитите исходный файл учетных данных, используя средства защиты и управления правами доступа к файловой системе.
- Создайте клиент автоматизации с крайне ограниченными правами доступа к определенным ресурсам в вашей организации.