【问题标题】:Is it possible to provide a public access for a specific endpoint for a service under Identity aware proxy?是否可以为身份感知代理下的服务提供特定端点的公共访问权限?
【发布时间】:2020-06-12 14:34:41
【问题描述】:

我在 Google Cloud App 引擎中有一个服务,在 IAP 后面。

它仅供我组织内的用户访问。 我需要让所有用户都可以访问该服务的一些端点。 有没有可能实现?

我找到了一个instruction,上面说有可能,但也说:The allUsers and allAuthenticatedUsers values are unsupported member types in a conditional role binding. If you specify one of these member types, the setIamPolicy operation will fail.

这对我来说不是很清楚而且有点混乱。

一个小例子: 我的服务有一个网址https://google-cloud-app-engine-service.com 而且我只想让每个人都可以使用此服务的一个端点: https://google-cloud-app-engine-service.com/public_endpoint.

谢谢!

【问题讨论】:

    标签: google-app-engine google-cloud-platform google-iap


    【解决方案1】:

    您不能使用 IAP 将 URL 路径列入白名单。最好的粮食是服务。我的意思是,您可以在 AppEngine 上激活 IAP。然后,对于您想要的服务,您可以选择它,转到信息面板并添加allUsersallAuthenticatedUsers,角色为IAP-secured web app user

    你有几个选择

    • 自己管理安全,不要使用 IAP(这不是一个好主意)
    • 在您的 AppEngine 前使用 Cloud Endpoint。我wrote an article on this 用于使用 APIKey 进行保护,但您可以根据需要更改安全定义。问题是您必须在 Cloud Endpoint 中定义所有 API,并且您的堆栈中有一个额外的组件
    • 使用 2 个服务(如果可能)。设置一个公开,另一个受 IAP 保护。

    【讨论】:

    • 谢谢你的解释,我试试看。
    【解决方案2】:

    正如@guillaume-blaquiere 在他的回答中所建议的那样,我将我的应用引擎服务分为两个独立的服务,并让第一个服务只能从我的组织内部访问,而第二个服务则可供使用 IAP 的每个人访问。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-10
      • 1970-01-01
      • 1970-01-01
      • 2017-08-16
      • 2020-04-05
      • 1970-01-01
      • 2015-10-25
      • 1970-01-01
      相关资源
      最近更新 更多