And*_*vik 5 javascript oauth node.js express reactjs
使用 Google OAuth 与在应用程序前端登录用户和在应用程序后端登录用户有什么区别?
示例:在 React 中登录用户并获取 ID 和身份验证对象,或者让 Node/Express 处理一切、过程、重定向并将其存储在数据库中。
最常见的一种或其他方法有什么优点吗?有什么“规则”吗?
使用 Google OAuth 与在应用程序前端登录用户和在应用程序后端登录用户有什么区别?
因此,为了向阅读本文的每个人澄清,在应用程序后端登录用户是服务器 OAuth 的另一种说法,而在应用程序前端登录用户是 JavaScript 浏览器应用程序(例如 React)的 OAuth。
通过服务器和浏览器的 OAuth 登录用户会产生一个“令牌”,服务器/浏览器可以使用该令牌代表用户发出请求。我们要求用户通过外部服务提供商向我们提供对其信息的访问权限,例如电子邮件地址、某种身份识别信息,这些信息将位于该令牌内,以及允许我们代表该用户采取行动的一些可能的权限用户。
最常见的一种或其他方法有什么优点吗?有什么“规则”吗?
当我们有一个应用程序需要在用户未登录时访问用户数据时,通常会使用服务器端 OAuth。因此,如果您尝试构建一个需要每十分钟访问一次用户电子邮件并可能删除电子邮件的应用程序代表用户,您希望能够每 10 分钟访问一次他们的电子邮件帐户,无论他们是否登录我们的应用程序。因此,对于这个用例,我们希望使用 Oauth 作为服务器。
否则,如果我们除了将用户登录到我们的应用程序之外不尝试代表用户执行任何操作,那么我们可以使用 OAuth 作为浏览器。
这两件事是非常不同的。在不知道您想要完成的具体内容的情况下,您应该知道作为一般规则,仅前端身份验证和授权会让您极其容易受到攻击。
如果有人很了解 JavaScript,或者正在使用编辑插件,或者数百万种不同的东西中的任何一种,他们就可以绕过很多前端授权。或者他们可以只是观察您的应用程序对后端进行的调用,然后模拟来自 Postman 之类的调用,完全绕过您的 Web 前端。
如果您不保护后端,那么您就不安全。通常系统会同时执行这两种操作。
| 归档时间: |
|
| 查看次数: |
4034 次 |
| 最近记录: |