问题标签 [google-iap]
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.
ajax - 使用 Bokeh AjaxDataSource 发出凭据请求
我有一个情节设置为使用AjaxDataSource
. 这在我的本地开发中运行良好,并且在我的 Kubernetes 集群中部署时运行良好。但是,在我将 HTTPS 和 Google IAP(身份识别代理)添加到我的绘图应用程序后,对我的数据 URL 的所有请求AjaxDataSource
都被 Google IAP 服务拒绝。
过去,我在向受 Google IAP 保护的服务发出其他 AJAX 请求时遇到过这个问题,并通过{withCredentials: true}
在我的 axios 请求中进行设置来解决它。但是,在使用 Bokeh 的AjaxDataSource
. 如何让 BokehJS 将 cookie 传递给我的服务AjaxDataSource
?
google-cloud-platform - 通过 Google IAP 使用嵌套身份验证
我部署了一个 3rd 方 webapp,它使用基本身份验证访问Google Cloud Run。我还想通过仅允许组织中经过 Google 身份验证的用户访问来保护端点。这两种方法都使用Authorization
请求的标头,我无法让它工作。
我尝试关注这篇文章,在一个字段中提供两个凭据。我的理由是,GCP 应该选择它支持的最强的凭证机制 - 承载 - 并为 webap 保留基本凭证。我不知道 webapp 是否可以处理它,因为谷歌的反向代理已经禁止我访问。
-> 401 未经授权
我也试过Proxy-Authorization
没有不同的结果。curl "-HProxy-Authorization: 持有者 ${bearer_token}" "-HAuthorization: basic ${base64_userpw}" https://my-google-endpoint.com
有没有办法让嵌套身份验证与谷歌的反向代理一起工作?我能够通过仅提供承载来绕过反向代理,但自然会在服务中遇到问题。在代理端停用身份验证后,我能够使用基本凭据对服务进行身份验证。
PS:我没有使用浏览器访问 webapp,而是使用命令行工具。
firebase - 您可以使用 IAP 登录 Firebase 吗?
我有一个受 Identity Aware Proxy (IAP) 保护的 Angular 应用程序。我正在尝试将 Firebase 添加到此应用中,以便将 Firestore 用于使用 AngularFire 的组件。我不想让用户登录两次,所以我想到了使用 IAP 向 Firebase 进行身份验证。
我试过了:
让 GCP 发挥它的魔力,看看用户是否会自动插入 Firebase Auth 模块 - 不是。
GCP_IAAP_AUTH_TOKEN
我已经尝试在cookie中使用您从 IAP 获得的令牌,signInWithCustomToken
方法是 - 不起作用,令牌无效。我
getRedirectResult
在通过 IAP 登录后尝试使用它是否被注入到那里 - 它不是。
我花了几天的时间试图让这个工作,我也让一个同事看过它,但这似乎是不可能的。现在,作为最后的手段,我在这里写信看看是否有人知道这是否可能。
如果没有,我将不得不建议团队切换身份验证方法并摆脱 IAP,但我宁愿保留它。
更多信息:
环境: App Engine 上的 NodeJS 10 灵活
角度版本: 7.xx
AngularFire 版本: 5.2.3
注意:我没有后端,因为我想单独使用这个组件,如果需要的话,最多可以使用几个 Cloud Functions。我正在尝试将 Firestore 用作“后端”。
google-cloud-platform - 从 GCP 中的命令行获取客户端 ID
我需要在 Google Cloud Platform 中使用 IAP 进行身份验证,但我无法获取保护 Airflow Web 服务器的代理的客户端 ID。
我需要一个命令来执行此操作,因为我无法使用JSON
服务帐户的密钥。
google-cloud-platform - 我可以限制对特定 Google Cloud IAP 后端的访问吗?
我正在使用 Cloud IAP 保护许多后端服务。
当项目成员想要访问这些服务时,我授予他们IAP-secured Web App User
权限,然后他们就可以访问所有受 IAP 保护的后端。
除了检查我的应用程序中的身份验证标头之外,还有什么方法可以限制用户仅访问某些后端?
google-iap - 从 localhost 前端访问受 IAP 保护的 API
我经常在本地 React SPA 中开发并希望使用受 IAP 保护的后端 API。后端 API 仅在开发中受 IAP 保护,在生产中一切都是开放的。
目前,我能想到的唯一解决方案涉及在本地运行的大部分透明的 nginx 代理,它获取用户凭据并不断执行编程 IAP 身份验证并将适当的 cookie/标头附加到所有请求。所以一种识别身份的“代理代理”。
我不想将 IAP 代码添加到 react 应用程序中,因为 IAP 仅用于开发。我很惊讶还没有人做过这样的事情(我在 GitHub 上看不到任何东西),这种方法听起来有效吗?
google-cloud-platform - 无法连接到没有外部 IP 的 Compute Engine?
我不确定是否是 Google Compute Engine 的奇怪行为。我有一个没有外部 IP 的虚拟机。现在,在我单击 ssh 按钮的地方,我仍然可以连接到它并看到日志:
未找到外部 IP 地址;默认使用 IAP 隧道。
我还没有配置任何 IAP。那怎么可能呢?那么 IAP 隧道是否始终开启?
google-cloud-platform - 针对 Google IAP 使用 Salesforce 命名凭据
目标
我构建了一个在 Google App Engine 上运行的 REST API,受Google Cloud IAP(身份识别代理)保护。我的目标是使用服务帐户从 Salesforce 向此 API 发出请求(使用外部服务功能)。
语境
感谢上一个问题,我知道我需要为此流程使用JWT 令牌交换来请求OIDC令牌。所以下一步是了解如何填写 Salesforce 的命名凭据定义:
命名凭据的属性如下:
- 证书:不适用于我的用例。
- 身份类型:是为每个访问的 Salesforce 用户使用不同的凭据,还是全面使用单个凭据。我将使用Named Principal。
- 身份验证协议:我现在意识到需要 JWT 令牌交换。
- 令牌端点 URL:为服务帐户下载的 JSON 指定
https://oauth2.googleapis.com/token
. - 范围:我不确定这个属性的正确值,也许应该是
openid email
? - 发行人:不知道这应该是什么。
- 命名主体主题:我认为这应该是服务帐户中的client_email值。但是,此文档说“为受 IAP 保护的客户端 ID 请求 OIDC 令牌”。这是否意味着我应该改用 IAP Client ID for Web 应用程序页面中的客户端 ID?
- 受众:我能找到的唯一可能合适的值来自 GCP 控制台的 HTTPS 资源部分中的 IAP 签名标头 JWT,格式为
/projects/NNNNN/apps/XXXXXXX
。 - 令牌有效期:我相信这应该是 1 小时。
- JWT 签名证书:服务帐户私钥。
- 生成授权标头:应启用。
问题:
- 任何人都可以确认我的理解并协助处理范围、发行人和指定的主要主题字段吗?
- IAP 文档谈到需要 JWT附加声明 ,
target_audience
最终结果如何?
google-app-engine - 从 Angular 访问受 Google IAP 保护的 API
我的应用程序有 2 个模块
- Spring Boot 后端 API
- Angular 前端(SPA 应用程序)
两者都部署在Google 应用引擎 (GAE)中。
我使用Google IAP进行身份验证。启用IAP后,是否有任何方法可以为组织内的不同用户生成IAP JWT 令牌,以对来自 Web 客户端的 API 进行身份验证。
我尝试了使用服务帐户的令牌生成机制。但对于我的场景,我只想验证和授权用户而不是服务帐户。我发现这个参考可以为用户启用 Web 资源访问,但它使用的是基于 cookie 的授权。对于 angular 等应用程序,这不是推荐的方式。