Google cloud platform 我是否可以对多个谷歌云项目Vault';s认证/gcp

Google cloud platform 我是否可以对多个谷歌云项目Vault';s认证/gcp,google-cloud-platform,hashicorp-vault,Google Cloud Platform,Hashicorp Vault,我想使用Vault在谷歌云上存储/检索不同项目的机密。Vault本身位于其自己的gcp项目中。我可以使用Vault对多个不同项目的服务帐户进行身份验证吗 我这样做的尝试会产生一个关于缺少权限的错误 我已检查Vault正在使用的服务帐户是否具有iam.serviceAccountKeys.get权限。尝试进行身份验证的服务帐户不存在 我猜权限错误是关于试图查找并检查外部项目的服务帐户密钥 * could not find service account key 'projects/-/servic

我想使用Vault在谷歌云上存储/检索不同项目的机密。Vault本身位于其自己的gcp项目中。我可以使用Vault对多个不同项目的服务帐户进行身份验证吗

我这样做的尝试会产生一个关于缺少权限的错误

我已检查Vault正在使用的服务帐户是否具有
iam.serviceAccountKeys.get
权限。尝试进行身份验证的服务帐户不存在

我猜权限错误是关于试图查找并检查外部项目的服务帐户密钥

* could not find service account key 'projects/-/serviceAccounts/name@project.iam.gserviceaccount.com/keys/xxxxxxxxxxxx': googleapi: 

Error 403: Permission iam.serviceAccountKeys.get is required to perform this operation on service account key projects/-/serviceAccounts/name@project.iam.gserviceaccount.com/keys/xxxxxxxxxxxxxxx., forbidden or could not find Google Oauth cert with given 'kid' id xxxxxxxxxxxxxxxxxxx: could not find public key with kid 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'

iam.serviceAccountKeys.get
是否仅允许在项目内对ID进行身份验证?

是的,您需要确保其为空或包含要绑定的所有项目的列表:

$ vault write auth/gcp/config /
    bound_projects=p1,p2,p3...
您还需要确保运行Vault的服务帐户

您需要为正在对Vault进行身份验证的服务帐户指定以下角色:

roles/iam.serviceAccountTokenCreator
roles/iam.serviceAccountTokenCreator