如何使用 Identity-Aware-Proxy 保护 Google Cloud Functions

问题描述

我无法使用 Identity-Aware-Proxy 保护我的 Google Cloud Function。

在 OAuth 同意屏幕之后,我仍然看到“您无权访问”屏幕,即使我已经按照我从文档中理解的步骤完成了所有步骤(这个:https://cloud.google.com/iap/docs/enabling-compute-howto)。

我的设置: 我有一个谷歌云功能。这可以通过通过后端服务连接到 Google Cloud Load Balancer 的自定义域进行访问。

我已将 OAuth 同意屏幕配置为“外部”用户类型,并将我的 Google 帐户添加到测试用户

然后我在该后端服务上启用了 IAP,并添加了具有“IAP-secured Web App User”角色的相同 Google 帐户。

IAP 页面上的“状态”列显示“正常”。负载均衡器页面上的后端服务也显示“身份感知代理:已启用”。当我现在尝试访问我的 Cloud Function 之前公开可用的域时,我现在会看到 Google 登录屏幕,登录后我被重定向到“您无权访问”屏幕。

我遗漏甚至误解了哪些步骤?

我为“Cloud Identity-Aware Proxy API”启用了审核日志,但是当我登录重定向到“您无权访问”屏幕时,日志资源管理器中没有记录任何内容

因此,屏幕显示我已成功通过身份验证,但未正确授权。同时,即使此页面 https://cloud.google.com/iap/docs/audit-log-howto 表明它应该记录的访问级别不足,但审核日志仍为空。我很困惑。

解决方法

搜索一段时间后,我发现 Identity-Aware-Proxy 不支持云功能,这就是您收到“您无权访问”消息的原因。

一种可能的解决方案是通过 IAM 使用授权访问来根据需要保护您的云功能,here 是可以帮助您理解它的指南。

最好的问候。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...