繁体   English   中英

如何使用 Google Cloud IAM 角色使用 Google OAuth 进行基于角色的 Web 应用程序控制

[英]How to use Google Cloud IAM Roles for Role Based Web Application control using Google OAuth

我使用 Google OAuth 登录我的 Web 应用程序,该应用程序在 Google Cloud Platform 中创建为项目,即 Project1。

我在这个项目中有一个具有自定义角色的用户。 使用 Google 帐户登录后,我可以使用Google_Client (PHP 库 - google/apiclient)获取用户信息。 但是,我很难弄清楚如何为登录用户获取自定义角色。 我尝试使用Google_Service_iam但得到 Uncaught Google_Service_Exception: 404 Not Found

这是使用 Google IAM 构建基于角色的控制 Web 应用程序的正确方法吗?

虽然可以通过自己构建它以某种方式实现,但我不会直接使用 IAM 作为身份验证提供程序。 相反,使用身份平台或类似 Auth0 或 Okta 的东西。 我个人更喜欢Firebase Authentication ,它可以轻松地与所有流行的语言和框架集成。

IAM 旨在授权 GCP 中的用户,而不是自定义 Web 应用程序中的用户。 在您的设置中,您必须将每个未来的用户添加到 Gsuite 和 IAM,这是非常昂贵的并且不是为此目的而设计的。

我建议查看应用程序开发人员的身份验证策略

由于您需要代表最终用户向 Google Cloud API 授予权限,因此您可以使用 OAuth 2.0 协议。 应用程序启动 OAuth 同意流程,您的应用程序将在其中接收用户的凭据。 使用这些凭据,它可以代表用户调用 Google Cloud API。

Nebulastic 还建议的另一个解决方案是Cloud Identity Platform ,您可以在其中配置自定义声明以根据用户的角色限制用户对资源的访问。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM