Как включить учетную запись службы для развертывания ssl-сертификата в проекте движка приложения Google? - PullRequest
0 голосов
/ 04 мая 2018

Я хочу автоматизировать развертывание ssl-сертификатов в моем проекте Google App Engine. Я хочу использовать служебную учетную запись для этого.

Это мои команды:

PROJECT=mycompany
gcloud auth activate-service-account --key-file /Users/antkong/gcloud_keys/${PROJECT}.json
gcloud app --project=${PROJECT} ssl-certificates create --display-name='certbot-$CERT_NAME' \
        --certificate=./letsencrypt-config/live/${DOMAIN}/cert.pem \
        --private-key=./letsencrypt-config/live/${DOMAIN}/privkey.pem

Однако я получил эту ошибку:

Activated service account credentials for: [mycompany@appspot.gserviceaccount.com]
ERROR: (gcloud.app.ssl-certificates.create) User [mycompany@appspot.gserviceaccount.com] does not have permission to access app [mycompany] (or it may not exist): Caller is not authorized to administer this certificate. You must be a verified owner of the certificate's domain(s) [zeetings-dev.com] to create, modify, or delete this resource. Your authorized domain(s) are []. If you own the certificate domain(s), you can obtain authorization by verifying ownership via the Webmaster Central portal: https://www.google.com/webmasters/verification/verification.

Какие разрешения я могу предоставить службе кондиционера, чтобы она работала?

Я предоставил эти роли учетной записи службы:

enter image description here

1 Ответ

0 голосов
/ 11 июня 2019

Проблема не связана с разрешениями. Учетная запись, выполняющая команду, должна быть авторизованным представителем домена сертификата. И процесс проверки этого представителя специфичен для учетных записей пользователей, недоступен для учетных записей служб. Таким образом, вам придется запустить gcloud auth login вместо gcloud auth activate-service-account.

...