问题标签 [google-cloud-identity-aware-proxy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
242 浏览

nginx - 没有定义解析器来解析谷歌云上 nginx 中的 myipp.com

我的目的是使用 nginx 作为另一个应用程序的代理,我在上面得到一个错误,502 badgateway当我尝试访问我的应用程序时我得到了。

我的 nginx 配置如下所示,我已经取消了默认 nginx 配置的链接,但我仍然在 /var/log/nginx/error.log 中收到以下错误。

有什么线索吗?

当我使用 127.0.0.1 / 8.8.8.8 作为解析器时,我收到以下错误:

我在谷歌云上使用 nginx 作为 VM 实例,我有两个防火墙规则(允许 http 和允许 ssh 访问);操作系统是 ubuntu 16.04。

0 投票
2 回答
221 浏览

google-cloud-platform - 无法为 Cloud Run 实例设置登录并且无法回滚更改,失去了对我的 Cloud Run URL 的访问权限

我尝试了不同的官方教程,但最终都具有误导性。

最后一个是这样的:https ://cloud.google.com/iap/docs/cloud-run-sign-in——它说:

启用外部身份,并在设置期间选择为我主持登录页面选项。

但没有这样的选择。没有创建新的 Cloud Run 实例,因此没有发生任何事情。过了一会儿,我更新了我的应用程序的源代码,重新部署,蓝色登录按钮出现在 Cloud Run 实例 URL 上。没有文档告诉“在这一步你现在会看到蓝色按钮”,所以我不确定它是什么。当我通过对话框时,它说我应该将 Cloud Run 实例 URL 添加到我一周前通过尝试我首先提到的不同教程创建的 OAuth 应用程序中的“允许的来源”。啊哈!我添加了允许的 URL,但这什么也没做——它只是循环,对话框让我在同一个页面上使用相同的蓝色按钮而不是我现在实际上无法访问的 Cloud Run 实例响应。我是 GCP 项目的所有者,我希望这一切都可以检查是否是我调用 Cloud Run。这个特定的 OAuth 应用程序是如何阻止这个特定的 Cloud Run 实例的?我有几个月或几年制作的多个应用程序和多个 Cloud Run 实例,但直到现在才出现这个蓝色按钮。

由于无法使其工作,我决定将其全部回滚。我允许对我的 Cloud Run 实例进行未经身份验证的调用,禁用 IAP API,删除 OAuth 应用程序,重新部署了几次,但蓝色按钮仍然存在,对话框显示:“OAuth 客户端已删除。” 而且我没有看到像我目前的问题在https://cloud.google.com/run/docs/troubleshooting上描述的那样

所以现在不仅整个事情没有工作(“登录页面”没有部署,即使我再次禁用和启用 IAP API 也没有)而且我完全失去了对 Cloud Run实例的访问权限 - - 它被无法禁用的蓝色按钮阻止。即使当我部署新服务时,他们也是这个坏事的幕后黑手。

UPD:一段时间后,我意识到我并没有真正失去任何访问权限——“蓝色按钮”是尝试设置身份验证失败的产物,我自己复制粘贴的 htm 页面不起作用,并且我只是访问了附加到服务 URL 的错误路径。所以这个问题是半无效的。尽管“为我创建登录页面”的问题仍然存在。

0 投票
0 回答
110 浏览

cors - Google Cloud IAP CORS 政策阻止我的网络应用调用受 IAP 保护的 API

这个问题困扰我很久了,累死了。。。

当我的 Web 应用程序调用受 IAP 保护的 API 端点时,我收到以下错误: No 'Access-Control-Allow-Origin' header is present on the requested resource.. 有趣的是预检请求和 GET 请求可以工作。

失败的请求是一个 POST content-type: multipart/form-data(我正在上传一个文件)。我一直认为我的 API 有问题,但我在响应中看到了这个标头:x-goog-iap-generated-response: true根据文档,这个响应是由 IAP 生成的。

我找不到任何解决这个问题的方法,我修改了我的 IAP 选项:

它仍然不起作用。我在这里想念什么?

0 投票
1 回答
147 浏览

google-cloud-platform - Postman - 通过身份验证保护的访问 API:Google Identity Aware Proxy 背后的 Bearer Token

背景: 我有一个以前在 VPN 后面运行的 API。它为某些路径自行实现 JWT 身份验证的 API,因此我们必须附加:

我们只是更新了我们的 API 以在 Google Identity Aware Proxy 后面运行,并遵循此处的官方文档。除了需要 JWT 身份验证的每条路径外,一切都运行良好。IAP 机制还使用:

并将覆盖现有的Authentication:标题。在不更改现有代码的情况下有任何建议吗?

谢谢你。

0 投票
0 回答
117 浏览

google-app-engine - 不能通过 IAP 将 SSH 隧道连接到 App Engine 实例吗?

我了解 App Engine 实例的可配置性有限,但当它们处于调试模式时,可以通过 SSH 访问它们在这种情况下,我们通过以下方式连接它们:

我们希望将 Cloud IAP 添加到组合中。我读过的所有内容都表明应该对流量的终点完全透明。IAP 不会终止 ssh 连接,它只是决定是否将流量传递到目的地或丢弃。因此,我们无法更改实例的内部 SSH 配置应该不是问题。如果它现在工作,它应该在通过 IAP 隧道时工作。

但是我发现的所有说明都只讨论了为计算实例设置它,并连接到:

gcloud app instances ssh不支持--tunnel-through-iap参数。App Engine 应用不会作为资源显示在 Identity-Aware Proxy 管理页面的“SSH 和 TCP 资源”部分中,仅显示在“HTTPS 资源”下。

这真的不可能吗?如果是这样,为什么不呢?如果 IAP 对网络流量像预期的那样透明,那么它应该不需要 App Engine 端的任何特殊支持。

0 投票
2 回答
280 浏览

oauth-2.0 - 'gcloud alpha iap oauth-brands create' 获取无效参数

出于某种原因,我在我的 gcloud 控制台中删除了所谓的品牌实体。现在我想使用控制台中的命令创建一个新的:

但是控制台返回给我:INVALID_ARGUMENT:请求包含无效参数。

  1. 我使用了不同的格式(使用括号和不使用括号)
  2. 我已经检查了我是否有足够的权限来做这件事(我使用所有者帐户,所以它有足够的权限)

我很绝望。

0 投票
1 回答
106 浏览

google-cloud-platform - 将 Google 帐号添加到 Cloud Identity 组

我有一个域的谷歌身份,example.com并创建了一个组,比如说my-admins@example.com。我可以创建用户a-user@example.com并说another-user@example.com并将他们添加到 group my-admins@example.com

我有一个 Google Cloud 组织 example.com 并已成功添加my-admins@example.com并分配了我想要的角色(例如组织管理员)。

我可以添加 google 帐户,例如googleaccount123@gmail.com作为我的组织的负责人并为他们分配角色,但我似乎无法将它们添加到my-admins@example.com组中。

我的 Google 身份组是否始终仅限于具有相同域的用户?如果是这样,我如何才能管理混合的示例用户和谷歌帐户组?

0 投票
2 回答
137 浏览

google-app-engine - 尽管 app.yaml 中设置了过期时间,但 App Engine 并未缓存静态内容

我正在为 node.js 应用程序使用 Google App Engine 标准环境。

我有一个以public我的静态文件命名的文件夹。这包含文件,例如chunk-XIAWB55V.js. 我希望这些文件被大量缓存,因为如果内容发生变化,散列文件名会发生变化。

我在我的文件夹中添加了一个静态文件处理程序,app.yaml以将请求重定向/static到我的public文件夹,并通过检查日志确认它有效:对例如https://<redacted>.com/static/javascript/build/prod/chunk-Z4M5HAC7.js的请求在请求日志中并且没有命中我的应用程序。文档暗示应应用 10 分钟的默认缓存。但是,浏览器开发工具显示实际的标头是,并且每次都发送cache-control: no-cache, must-revalidate一个请求(得到 a )。304

我曾尝试向expiration我添加一个参数,app.yaml但它没有任何区别。我也尝试设置标题,app.yaml但没有任何区别。我当前的文件如下所示:

我仍然收到如下回复:

在此处输入图像描述

我在 App Engine 前面使用 Identity Aware Proxy,我从例如这个问题中知道 IAP 和缓存可能混合得不好,但这似乎只是指可能的 IAP 绕过。我的静态文件不敏感,我很乐意接受这种风险。

0 投票
1 回答
68 浏览

google-cloud-platform - 使用 IAP 外部身份登录页面时出错

我有一个需要 IAP 保护的应用程序,所以我启动了外部身份。

通过 GCP 控制台,IAP 在 Cloud Run 上创建了一个登录页面。

访问我的应用程序登录页面时,Cloud Run 日志中出现错误:“存储桶不存在”。创建 Cloud Run 登录页面时,我的帐户已经具有存储管理员角色。

重定向时在浏览器上,我收到以下错误消息:

访问 <cloud-run-sign-in-page-url>/admin 时,我也收到此错误“API_KEY_HTTP_REFERRER_BLOCKED”

登录页面部署的 authui-container 版本为 v0.1.11

创建登录页面时我缺少什么?我该如何解决这个问题?

谢谢!

0 投票
1 回答
122 浏览

google-cloud-platform - 在 GCP 的默认 VPC 中创建的允许 IAP 防火墙规则也反映在其他 VPC 中

我在默认 VPC 中创建了以下防火墙规则。它被配置为适用于 VPC 中的所有实例。

在默认 VPC 中允许从 iap 进入的防火墙规则

现在,如果我从端口中删除“全部”,IAP 控制台中的所有虚拟机都会收到以下警告。根据以下参考 https://stackoverflow.com/a/62635234/10580233可以

防火墙规则仅提及 22 和 3389 端口时的 IAP 警告

问题是,当我在默认 VPC 中为防火墙配置“全部”时,即使默认 VPC 之外的虚拟机的警告也消失了。IAP 防火墙规则是否适用于整个项目,我不这么认为。我也在其他 VPC 中配置了 allow-ingress-from-iap 防火墙规则,但它只有 22 和 3389 端口,所以理想情况下 IAP 应该向它们显示警告。

默认和自定义 vpc 的允许 iap 规则