Google 推出了应用访问权限控制设置,以便 Google Workspace 教育版 管理员更轻松地控制第三方应用访问其组织' Google 数据的方式(用户使用 Google Workspace 教育版账号登录时)。虽然第三方应用开发者无需执行任何操作,但以下是一些其他开发者认为有用的最佳实践。
使用增量 OAuth
您可以使用增量授权,先仅请求启动应用所需的范围 ,然后在需要新权限时请求其他范围 。然后,应用上下文会向用户说明请求的原因。
登录时,您的应用会请求基本范围,例如登录范围个人资料,以及应用运行所需的其他初始范围。稍后,当用户想要执行需要其他范围的操作时,您的应用会请求这些其他范围,用户只需在权限请求页面中授权新范围。
构建 Google 课堂插件时,您应遵循 Google Workspace Marketplace 指南,提供应用所需的 OAuth 范围的完整列表。这是必要的,以便管理员了解系统要求网域用户同意哪些范围。
确保所有应用都经过 OAuth 验证
所有访问 Google API 的应用都必须验证其是否准确地代表了 Google 的 API 服务用户数据 政策中规定的身份和意图。如果您维护多个使用 Google API 的应用,请确保每个应用都已通过验证。管理员可能会看到与您的已验证品牌相关联的所有 OAuth 客户端 ID。为帮助管理员避免配置错误的 OAuth 客户端 ID,请为测试和生产 使用单独的 Google Cloud 项目,并删除所有未使用的 OAuth 客户端 ID。
OAuth API 验证是 Google Cloud Platform 使用的一种流程,旨在确保请求敏感或受限范围的应用安全且合规。 验证流程有助于保护 Google Cloud 用户和数据免遭未经授权的访问。
请求敏感或受限范围的应用必须遵守 Google API 服务用户数据政策。此政策要求应用保护用户数据,并且仅将数据用于用户已授权的用途。应用可能还需要接受独立的安全评估,以验证其是否符合 Google Cloud 的安全要求。
请注意,OAuth API 验证流程可能需要几周时间才能完成。应用通过验证后,您就可以请求所需的敏感或受限范围。
如需了解详情,请参阅 OAuth API 验证常见问题解答。
处理多个 OAuth 客户端 ID
一个 Google Cloud 项目可能具有多个 OAuth 客户端 ID,这可能需要网域管理员多次配置您的访问权限。
确保 OAuth 客户端 ID 的准确性
请与您的开发团队核实,了解哪些 OAuth 客户端 ID 用于与 Google OAuth 集成。为测试和生产使用两个不同的 Google Cloud 项目,以帮助管理员了解要配置哪些 OAuth 客户端 ID。从生产项目中删除所有已废弃或过时的客户端 ID。
CSV 上传
如果您有多个客户端 ID,我们建议您利用 CSV 批量上传 选项,帮助管理员快速配置您的所有应用。
字段包括:
| 字段 | 必填 | 备注 |
|---|---|---|
| 应用名称 | 否 | 输入应用的名称。您在 CSV 文件中对应用名称所做的更改不会应用到管理控制台。 |
| 类型 | 是 | Web 应用 、Android 或 iOS 之一。 |
| ID | 是 | 对于 Web 应用,请输入向应用颁发的 OAuth 客户端 ID。 对于 Android 和 iOS 应用,请输入应用在 Google Play 或 Apple App Store 中使用的 OAuth 客户端 ID 或程序包 ID/软件包 ID。 |
| 组织部门 | 是 | 由客户填写。 输入正斜杠 ('/') 可将应用访问权限设置应用于整个网域。如要向特定组织部门应用访问权限设置,请在电子表格中为每个组织部门添加一行,并重复使用应用名称、类型和 ID。(例如“/org_unit_1/sub_unit_1”)。 |
| 访问权限 | 是 | 受信任、已屏蔽或受限之一。 |
OAuth 错误
这些新的管理员控制项引入了两个错误消息。
- 错误 400:access_not_configured - 当 OAuth 连接因应用未配置而被 拒绝时收到。
- 错误 400:admin_policy_enforced - 当 OAuth 连接因管理员已屏蔽您的应用而被拒绝时收到。
被指定为未满 18 周岁的用户
管理员可以管理对未配置的第三方应用的访问权限,供 指定为未满 18 周岁的用户使用。如果用户遇到“访问遭到阻止:贵机构的管理员需要审核‘[应用名称]’”这一错误消息,则必须从此错误消息中请求访问权限, 以便管理员审核第三方应用。管理员可以决定是允许还是屏蔽第三方应用。