2016-03-31 7 views
1

Ротация учетных записей Postgres и Redis с использованием инструмента Heroku Toolbelt очень проста https://blog.heroku.com/archives/2012/7/17/rotate_database_credentials_on_heroku_postgres_Как повернуть учетные данные Героку Postgres/Redis с помощью API?

В идеале, мне нужно будет сделать это с помощью API. Есть ли способ? Я не могу установить toolbelt в моей производственной среде и вернуться к system или backticks, чтобы назвать это, потому что; по иронии судьбы, он работает на Heroku.

EDIT: На самом деле есть способ запустить Toolbelt в Heroku, используя этот buildpack, но я бы предпочел сделать это изначально через API.

+0

вы можете попросить поддержку герою сделать это – Set

ответ

0

Этот API платформы в настоящее время не предоставляет для этой цели конечную точку. На данный момент ваш выбор ограничен CLI/buildpack или с помощью информационных панелей для соответствующих хранилищ данных.

0

Для этого нет публичного API.

Однако, это может быть сделано ...

Во-первых, вам нужно уникальное имя вашей базы данных. Вы можете посмотреть, что это имя/псевдоним вложения, который обычно равен DATABASE или HEROKU_POSTGRES_[COLOR] по умолчанию, или что-либо другое, которое вы, возможно, назначили с помощью heroku addons:{create,attach} --as NAME. Используя псевдоним DATABASE по умолчанию, вот как вы можете получить его с помощью curl и jq:

$ curl -H "Authorization: Bearer $API_KEY" \ 
     -H "Accept: application/vnd.heroku+json; version=3" \ 
     https://api.heroku.com/apps/$APP_NAME/addon-attachments/DATABASE \ 
    | jq .addon.name 

    "postgresql-colorful-12345" 

Тогда, при условии, что имя сохраняется хранится в $DBNAME, вы можете повернуть свои полномочия следующим образом:

$ curl -X POST -u "x:$API_KEY" \ 
    https://$DOMAIN/client/v11/databases/$DBNAME/credentials_rotation 

{"status":"ok","url":"[REDACTED]","message":"Password reset."} 

$DOMAIN будет postgres-api.heroku.com для платных планов и postgres-starter-api.heroku.com бесплатно/хобби, IIRC.

Этот API может измениться в любое время, хотя, поскольку он считается частным API, поэтому учитывайте его в своем решении использовать его.

 Смежные вопросы

  • Нет связанных вопросов^_^