沒有公共的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,所以在你決定使用它時應該考慮這個因素。
你或許可以要求heroku支持做到這一點 – Set