OAuth2 - 将访问令牌返回给用户是否安全?

时间:2014-01-02 10:06:32

标签: .net security oauth oauth-2.0

我是OAuth(1& 2)的新手,我正在开发一个移动应用的服务器端,该应用的表单带有“从Google帐户填写详细信息”按钮。我不需要任何远程身份验证\授权。

here(清单2)我知道服务器应该有一个控制器:

在此阶段,我的服务器假设能够使用访问令牌从https://www.googleapis.com/plus/v1/people/me获取用户的详细信息 - 然后将详细信息返回给用户的应用程序,以填写其表单。

我(服务器开发人员)是否允许延迟并将访问令牌返回给用户,而不是其详细信息?即,让用户应用程序向https://www.googleapis.com/plus/v1/people/me发出请求。

将来,这将允许在不更改我服务器上的代码的情况下为客户端应用提供更多功能。

由于

1 个答案:

答案 0 :(得分:2)

由于多种原因,您的服务器不应将其访问令牌公开给客户端应用程序。

  1. OAuth协议的重点是为第三方提供安全且有限的访问权限,而不会暴露您自己的凭据(例如标识符,密码等)。你不应该忽视这一点。

  2. 向特定OAuth客户端发出令牌,在您的情况下,它是服务器。共享令牌不会改变这一点。仍然代表您的服务器而不是客户端应用程序访问用户详细信息,如果出现任何问题,您将负责。

  3. 访问令牌应该是短暂的生活,它通常会在几分钟后到期。除非客户端立即获取数据,否则没有用。刷新令牌用作永久授权,但除非您故意想要破坏服务器安全性,否则永远不应该共享它们。