通过 Google DM 获取部署的服务帐户密钥

Getting service account key deployed via Google DM

是否可以通过 Google 部署管理器(iam.v1.serviceAccounts.key 资源)作为对 DM 请求的结果获得部署的服务帐户密钥?

我看到了在输出中公开它的选项 (https://cloud.google.com/deployment-manager/docs/configuration/expose-information-outputs),但看不到任何可能获得密钥作为 Deployment Manager 的响应的可能性 insert/update API方法。

要获取密钥,您可以设置输出或引用 PrivatekeyData in the same configuration as creating the key。如果没有对该字段的引用或输出,则 DM 将忽略它。

示例配置如下:

outputs:
- name: key
  value: $(ref.iam-key.privateKeyData)

resources:
- name: iam-account
  type: iam.v1.serviceAccount
  properties:
    accountId: iam-account
    displayName: iam-account-display
- name: iam-key
  type: iam.v1.serviceAccounts.key
  properties:
    parent: $(ref.iam-account.name) 

当运行上面的yaml文件加上

gcloud deployment-manager deployments create [DemploymentName] --config key.yaml. 

这将创建一个具有关联密钥的服务帐户。您可以查看与配置相关的manifest。您也可以在云控制台中访问 Deployment-> Deployment properties-> Layout。