[英]How to implement OAuth 2.0 like token based authentication for rest API which is accessed from mobile and javascript web applications
我需要为我的REST API实现身份验证和授权机制。 这是从移动应用程序和Web应用程序访问的rest api。
机制我想实现:
所以根据我的理解,我使用的是基于密码的身份验证。 移动应用程序或javascript Web应用程序通过HTTPS post请求发送用户名和密码,以获取有限时间的访问令牌。
问题
所以我试图理解像facebook和twitter这样的应用程序如何为其原生移动应用程序实现授权。 他们是否通过存储在本地存储中永远记住访问令牌。 这样如果一些恶意应用程序有root权限,那么android手机就可以访问令牌。
对于在javascript和android应用程序中开发的独立Web应用程序,它对上述机制有什么改进?
访问令牌确实意味着短暂的生命。 为了保持很长一段时间的授权,OAuth2有一个叫做“刷新令牌”的东西。
如果提供商支持它(以及Google和Facebook都支持),OAuth2消费者可以在初始流程期间除了访问令牌之外还请求刷新令牌(Google称之为“离线访问”,我相信)。 访问令牌通常被使用,但是当它到期时,消费者可以使用其凭证和刷新令牌请求新的访问令牌。
有关详细信息,请参阅Google的文档: https : //developers.google.com/accounts/docs/OAuth2WebServer#offline 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.