Google 同意设置为内部的项目/谁是 "member of my organization" 我如何管理成员?

Google Project with consent set to internal / Who is a "member of my organization" and how do I manage members?

免责声明:https://console.cloud.google.com/support/community 引导至此处。 Google 的文档太可怕了,所以如果我没有被否决到 dev/null

的深度,请尝试一下

出于迫在眉睫的需要,我正在将一个监控 Gmail 帐户的私人应用程序迁移到 OAuth 2,作为此过程的一部分,有必要创建一个 OAuth 同意屏幕。由于此应用程序只会在内部使用,因此选择“Internal”作为应用程序类型最有意义 - 描述如下:

Only users with a Google Account in your organization can grant access to the scopes requested by this app.

这个项目的用户包括两个 "owners" — 我自己使用我的个人 Gmail 帐户,和 属于公司 G Suite 帐户的另一名员工。

我的问题是 有资格成为“我组织中的用户”?这是基于项目所有者吗?我的非 G-Suite 帐户(项目所有者)是否符合条件?在 G Suite 帐户中包含一名成员是否会自动关联其他员工帐户?哪里可以实际看到这些用户或直接管理他们?

我实际上想再添加几个帐户,但仍将应用程序保密,但我对 Google 如何确定哪些 gmail 帐户能够授权该应用程序感到困惑。

更新: 澄清一下,当我以 G Suite 成员身份登录与项目所有者在同一域中访问同意页面时,一切都很好。但是,我们有其他成员在不同域下的同一 G Suite 帐户中管理,对于这些,我收到消息:

Error 403: org_internal This client is restricted to users within its organization.

此外,我什至无法使用 我自己的电子邮件(应用程序的创建者和所有者) 授予访问权限。我想知道如何添加我自己和其他 G Suite 成员,以便能够在不创建应用程序的情况下授予对该应用程序的访问权限 public。下面建议我将它们(或它们的域)添加到 Google Cloud IAM,但我不清楚如何让它工作。我自己的电子邮件已经存在于 IAM 中,角色为 "owner",显然这不满足要求。

Who is a member of my organization?

您为项目、文件夹或在组织级别添加到 Google Cloud IAM 的任何人。这可以包括 Google 帐户(Gmail 电子邮件地址)、G Suite 和 Google 身份。最后两个使用域名 (example.com) 和在该域中具有身份的任何人 (someone@example.com)。

Google 的目标是加强 Google 云平台的安全性。过去,任何拥有 Google 帐户电子邮件地址的人都可以使用您的项目 OAuth 来请求访问权限。访问级别由 OAuth 范围控制。如今,授予该访问权限会导致出现带有未经验证的应用程序警告的同意屏幕。要超越(删除)该警告,通常需要对您的应用程序进行安全审核,费用估计为 75,000 美元。

How do I manage members?

通过 Google Cloud IAM。您可以添加和删除成员;分配和删除附加到成员 ID 的 IAM 角色。通过 G Suite 或 Google 身份添加或删除成员帐户。不要忘记,成员可以是 Google 组的一部分和域的一部分,每个成员也是 Google Cloud Platform 中的一个身份。

对于 GSuite 用户:

Cloud IAM 仅处理授权,您需要在别处处理身份验证。默认情况下,GSuite 作为默认身份验证提供程序与 CloudIAM 集成。

对于非 GSuite 用户:

您可以使用 cloud identity free edition,但用户必须管理单独的一组凭据。

不使用 GSuite 的单点登录

如果您想要单点登录选项,您还可以使用Google Cloud Directory Sync与您的本地 Active Directory 或 LDAP 服务器同步以进行身份​​验证。因此用户可以保留他们的登录详细信息。

这就是身份验证在 GCP 上的工作方式。作为 授权,您拥有 CloudIAM,您可以在其中通过预定义角色、原始角色和自定义角色管理访问。

Cloud IAM 和授权

通常,您使用 google 组和 resource hierarchy 分配访问权限,以便您更轻松地管理用户访问权限。但请记住,如果您通过资源层次结构中的 ascenstor 文件夹授予对某些内容的访问权限,那么您不能拒绝下游访问。因此,您需要相应地规划访问层次结构。

回答您的问题谁有资格成为 "user in my organization"?,每个人都可以登录,但默认情况下他们不能访问任何项目,除非提供资源或 API单独访问或 through a group.

希望这能为您澄清一些事情。

为了将内部应用程序用于 OAuth,项目必须属于与所有用户相同的 GSuite 客户关联的组织。

内部应用无法使用非 GSuite 帐户。此处有更多相关信息:https://support.google.com/cloud/answer/6158849#public-and-internal.