小编edd*_*ies的帖子

新项目中不存在Google存储传输服务帐户

我正在尝试在新的 GCP 项目中使用 Terraform 创建资源。作为其中的一部分,我想设置roles/storage.legacyBucketWriter为 Google 托管服务帐户,该project-[project-number]@storage-transfer-service.iam.gserviceaccount.com帐户为特定存储桶运行存储传输服务作业(模式为 )。我正在使用以下配置:

resource "google_storage_bucket_iam_binding" "publisher_bucket_binding" {
  bucket = "${google_storage_bucket.bucket.name}"
  members     = ["serviceAccount:project-${var.project_number}@storage-transfer-service.iam.gserviceaccount.com"]
  role = "roles/storage.legacyBucketWriter"
}
Run Code Online (Sandbox Code Playgroud)

澄清一下,我想这样做,以便当我使用 JSON API 创建一次性传输作业时,它不会通过先决条件检查。

当我运行 Terraform apply 时,我得到以下信息:

Error applying IAM policy for Storage Bucket "bucket":
Error setting IAM policy for Storage Bucket "bucket": googleapi:
Error 400: Invalid argument, invalid
Run Code Online (Sandbox Code Playgroud)

我认为这是因为有问题的服务帐户尚不存在,因为我也无法通过控制台执行此操作。

是否需要启用任何其他服务才能创建服务帐户?

google-cloud-storage google-cloud-platform terraform terraform-provider-gcp

7
推荐指数
1
解决办法
4715
查看次数

docker-compose .env与direnv .envrc

我们已经使用direnv已有一段时间了,以自动将环境变量加载到特定文件夹中。从版本3开始,docker -compose似乎支持.env文件

.envrcdirenv使用的文件使用export

export NODE_ENV=development

仅在没有export获取变量值的情况下,将同一文件与docker-compose一起使用似乎无效。

NODE_ENV=development

关于如何将其统一为单个.env.envrc文件或替代direnv的任何想法?

environment-variables docker docker-compose direnv

5
推荐指数
3
解决办法
1632
查看次数

如何使用 Python 访问受 IAP 保护的资源?

如何使用 Python 访问受 IAP 保护的资源?更具体地说,我想BearerAuthorization标头中生成调用 IAP 保护资源所需的令牌。

我创建了一个服务帐户,授予它“IAP 保护的 Webapp 用户”权限并将其 JSON 凭据下载到磁盘。

python google-app-engine google-cloud-platform google-iap

5
推荐指数
1
解决办法
898
查看次数

Google Cloud IAP,带有承载令牌的授权给出错误代码13,并且永远不会到达应用引擎实例

我正在尝试为托管在Google云中的应用程序设置云IAP。

通过Web登录该应用程序效果很好,您将重定向到Google身份验证页面,并重定向回网站,并将会话令牌设置为cookie。

通过非Web界面进行身份验证,请遵循编程身份验证指南,尝试在那里描述的命令行方式以及使用iOS SDK。在这两种情况下,登录都可以正常工作,并且我从登录过程中收到一个id_token。但是当我发出如下请求时:

curl --verbose --header 'Authorization: Bearer ID_TOKEN' https://an-app.appspot.com/api/user
Run Code Online (Sandbox Code Playgroud)

我总是收到以下回复:

There was a problem with your request. Error code 13
Run Code Online (Sandbox Code Playgroud)

不管请求中的ID_TOKEN是什么,响应始终是错误代码13。如果我未指定Authorization标头,则会将我重定向到Google的登录页面。

我缺少任何设置或配置吗?

google-app-engine google-iap

5
推荐指数
1
解决办法
2103
查看次数

如何使用用户默认凭据以编程方式对受Cloud Identity-Aware代理(Cloud IAP)保护的资源进行身份验证?

我希望能够使用开发环境上的用户默认凭据以编程方式为Iap生成一个ID令牌(即,我自己的装有Google Cloud SDK并登录的笔记本电脑)。

遵循文档时,我设法使用服务帐户文件生成了授权令牌。

google.auth.default个人计算机上使用时,我可以看到type的凭据google.oauth2.credentials.Credentials带有refresh_token。我想用它,因为它是在做卷曲生成令牌文档Authenticating from a desktop app -> Accessing the application,但我不能使它工作。有人知道是否可以通过这种方式进行身份验证吗?

python google-cloud-platform google-cloud-python google-iap

3
推荐指数
2
解决办法
1204
查看次数