我在GCP上有一个服务帐户,我把它的钥匙放在一个秘密经理那里。
是否有办法为该秘密持有服务帐户密钥设置预定的秘密轮换,以便Pub/Sub将是GCP密钥,而不是由我管理?GCP提供这样的托管Pub/Sub服务吗?
发布于 2022-01-17 02:58:09
这方面没有内置功能,但谷歌建议使用像键盘旋转器这样的工具来确保服务帐户密钥的安全。
您还可以使用Cloud编写自己的脚本,该脚本将创建一个新的密钥,并在中更新它:
# create the key
gcloud iam service-accounts keys create key-file \
--iam-account=sa-name@project-id.iam.gserviceaccount.com
# obtain new key
gcloud beta iam service-accounts keys get-public-key KEY_ID \
--iam-account=SA_NAME --output-file=FILENAME
#update the secret in secrets manager
gcloud secrets update secret-id \
--update-labels=key=value
# remove the old one
gcloud iam service-accounts keys disable key-id \
--iam-account=sa-name@project-id.iam.gserviceaccount.com
这当然是一个简化的代码,您可以在这里找到更多关于这些命令的信息- 1,2。
这样的脚本可以定期运行,例如在GCE实例或云调度器上使用crontab。
https://stackoverflow.com/questions/70737605
复制