我想为访问GCP的用户设置一个OAuth2.0流。
用户将登录到一个web应用程序。
然后,OAuth2.0流将需要请求同意,这将允许应用程序代表他们执行事情,基于他们的权限。
因此,需要请求的范围应该是那些覆盖它们对GCP的实际权限的作用域。
当涉及到OAuth2.0和GCP时,这样的事情可能发生吗?
发布于 2022-07-01 16:04:03
你看到了吗?https://developers.google.com/identity/protocols/oauth2
看来这能解决你的问题。
与这个链接分开->是的,这是可以做的。您可以通过OAuth登录,一旦经过验证,该服务就可以使用GCP服务帐户https://cloud.google.com/iam/docs/service-accounts来处理GCP服务。
发布于 2022-07-01 17:06:35
可以授予用户模拟服务帐户的权限。
可以授予服务帐户通过域范围委托(Google )模拟用户帐户的权限。
用户不能冒充其他用户。没有授予所需权限的机制。
发布于 2022-07-12 22:53:14
在GCP项目中,您可以使用以下类型的凭据访问Google:
因此,要回答您的问题,在GCP中使用OAuth 2.0当然是可能的。
但是,如果不知道应用程序需要访问什么数据,很难判断使用服务帐户还是使用OAuth 2.0客户端更为合适。在GCP项目中,如果您转到APIs and services > Credentials > CREATE CREDENTIALS > Help me choose,向导将引导您完成为每个身份验证场景创建最合适的凭据的过程:

最后,当你这样说:
用于访问GCP的用户。
您的意思是这些用户有一个可以访问项目中使用的Google的Google帐户吗?如果是这样,并且您的项目不需要访问用户的数据,那么服务帐户可能是一个比OAuth 2.0同意屏幕更好的选择。我认为您可以让服务帐户通过域范围的委托来模拟用户,但是请记住Google本身不鼓励这个功能。。
另见创建访问凭据。
https://stackoverflow.com/questions/72829201
复制相似问题