同意设置为内部的 Google 项目/谁是”我的组织的成员”,我如何管理成员?

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 在这里引导。谷歌的文档太可怕了,所以如果我没有被低估到 dev/null

的深度,那就试一试吧

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

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

此项目的用户由两个"所有者"组成,一个是我自己使用我的个人 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 成员,以便能够在不公开的情况下授予对应用程序的访问权限。下面建议我将它们(或它们的域)添加到 Google Cloud IAM,但我不清楚如何使它工作。我自己的电子邮件确实存在于 IAM 中,角色为"所有者",显然不满足要求。


要让内部应用用于 OAuth,项目必须属于与所有用户相同的 GSuite 客户关联的组织。

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


Who is a member of my organization?

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

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

How do I manage members?

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


对于 GSuite 用户:

Cloud IAM 仅处理您在其他地方处理身份验证所需的授权。默认情况下,GSuite 与 CloudIAM 集成为默认身份验证提供程序。

对于非 G Suite 用户:

您可以使用云身份免费版,但用户必须管理单独的一组凭据。

没有 GSuite 的单点登录

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

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

云 IAM 和授权

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

要回答您的问题,谁有资格成为"我的组织中的用户"?每个人都可以登录,但默认情况下他们无法访问任何项目、资源或 api,除非他们被授予单独或通过一组。

希望这可以为您澄清一点。