最近有人问我前端用户身份验证和后端用户身份验证之间的区别(在采访中)。我无法回答他的问题。他问我你在网上看到的认证是在前端还是后端完成的,我回答后端。然后他问什么是前端认证,我无法回答。 我用谷歌搜索找出答案,但无法获得两者之间的确切区别,即前端完成的操作与后端完成的操作。它们各自的使用方式、地点和原因?
如有任何帮助,我们将不胜感激。
编辑:我在这里读到了相关内容:HTTP 的身份验证机制。它谈到了一种称为双重身份验证的东西。尽管如此,我还是无法理解前端身份验证的概念。
我的理解是,用户在后端经过身份验证后,会向浏览器发出一个唯一的cookie。这可能被视为前端身份验证,因为它允许用户继续使用站点,而无需登录每个页面。网站会根据每次后续调用的 cookie 数据来识别用户,但要遵守任何限制。
一个简单的例子是存储用户名和密码的 cookie,但显然这不是很安全。更复杂的方法将涉及加密、SSL、各种标志(
secure
、http-only
、expiry-date
)等等。
这个问题是主观的,并且根据上下文可能有太多解释。存在一种用户对系统身份验证和系统对系统身份验证的类型。在这种情况下,前端身份验证最接近的类比是用户对系统的身份验证,无论底层协议如何,也无论是否使用显式后端堆栈。每当两个系统必须在没有用户参与的情况下相互进行身份验证时,就可以类似于后端身份验证。同样,这是主观的并且非常上下文