我正在设计一个Web应用程序,主要分为以下两部分
我想为此应用实施 OAuth2 。我通过OAuth2阅读并了解了它的各种流程,并根据我的理解,我得出结论" 资源所有者密码凭证"流是一种方式,因为客户端和服务都属于我,用户也将直接注册我的应用程序,因此他们将提供用户名和密码。
我研究了很多"资源所有者密码凭证"但这种流动的谈话和记录非常少。关于ZERO我几乎不知道如何在我的应用程序中实现这个流程。我正在开发Node JS中的Website和Rest API。 请指导我如何实现这一点?任何演示,文档都会有所帮助。
提前致谢!
答案 0 :(得分:1)
你是对的。它的记录非常少,而且经常被错误地解释为错误。 对该流程的大多数解释都没有指出,该流程有两种不同的情况。
如果你有一个SPA或类似的开放式应用程序,你不希望客户端ID和客户端秘密与ROPC流程。因为,每个人都可以阅读它。此外,RFC中不需要它。
你的情况是关于没有授权的双腿oauth。
这是一篇关于如何保护ROPC流程的非常好的文章: http://andyfiedler.com/2014/09/how-secure-is-the-oauth2-resource-owner-password-credential-flow-for-single-page-apps
希望有所帮助,我目前正在努力解决同样的问题。