【发布时间】:2019-12-05 16:13:33
【问题描述】:
我正在尝试了解 Cookie 之间的区别; Bearer 和 JWT 专门在 .NET Core 上下文中。我花了几天的时间阅读这个。
我的研究告诉我,Cookies 和 Bearer 是替代的身份验证机制,它们都表示为 JWT。
.NET Core Web 应用程序应该使用 Cookies 而 .NET Core Web APIs 应该使用 Bearer 是否公平?我问的原因是因为我为 Bearer 查看的每个示例(在 .NET Core 上下文中)都使用 Web API,而我为 Cookies (在 .NET Core 上下文中)查看的每个示例都使用 Web 应用程序。我可以理解这一点,因为我的研究告诉我 cookie 最适合网络应用程序(使用浏览器 - 最适合 cookie),但是网络 API 可以被非浏览器应用程序使用(因此 Bearer 更适合)。
我是否理解正确?
我今天看了很多其他类似的问题,例如。这个:JWT vs cookies for token-based authentication。但是,没有人回答我的具体问题 - Cookie 是否会用于 Web API,Bearer 令牌是否会用于 Web 应用程序?
【问题讨论】:
-
我将 JWT 令牌存储在 cookie 中(也可以是本地存储),当我向具有授权属性的控制器发出请求时,我会创建一个带有“授权”标头的请求令牌的价值。关于您的问题,但是您可以使用 cookie 保护 Api 应用程序:blinkingcaret.com/2018/07/18/…
-
@Daniaal,谢谢。您可以使用承载来保护 Web 应用程序(不是 api)吗?这是我的更多问题。
-
据我所知,这将是 cookie。通常,JWT 等不记名令牌与 Web Api 身份验证相关联。
标签: json authentication asp.net-core cookies jwt