oAuth 2.0和公开的API

时间:2018-01-15 14:31:34

标签: oauth-2.0

我们有一个Web portail,它使用服务台应用程序中的一些公开API来创建和列出故障单。 oAuth 2.0用于通过Google服务器验证请求。以下是不同组件的作用:

  • Google oAuth 2.0:身份验证服务器
  • 服务台应用程序:具有公开API的资源服务器
  • 客户:Web portail

我必须使用哪个oAuth来验证从客户端到资源服务器的请求?我认为这是客户凭证。

如何检查资源服务器何时收到请求已获得授权且可以访问资源的请求?目前,资源服务器通过授权服务器Google(使用API​​ useremail端点)检查随请求提供的访问令牌,然后,如果声明了client_id,则资源服务器在文件中本地检查。

欢迎任何帮助

由于

1 个答案:

答案 0 :(得分:0)

如果要将令牌保留在Web门户中,您可能希望使用Implicit流。资源所有者密码凭据流有一些问题:

  • 它需要一个客户端密码,无法在浏览器中安全存储,
  • 您的门户网站获取(门户网站用户)的用户名和密码,从安全角度来看这是不好的

您无法使用Google访问令牌处理自己的应用程序(Service Desk)的授权,因为它们仅包含与Google相关的范围(用于访问Google服务和资源)。您可以在本地执行此操作 - 在Google用户和本地角色之间建立映射,或者让您自己的OAuth2服务器使用您自己的接受Google身份验证的范围(例如KeyCloak)。