【问题标题】:Add JWT authentication to Asp.Net MVC applicatio将 JWT 身份验证添加到 Asp.Net MVC 应用程序
【发布时间】:2019-11-21 05:40:15
【问题描述】:

基本上,我有一个家庭作业,其中涉及我在 Asp.Net(标准版本,而不是 Core)中创建一个 MVC 应用程序。我需要使用 jwt 提供身份验证,但我必须使用单独的身份验证服务器,因此令牌创建和验证被委托给该服务器,并且如果这样的服务器已经存在(可能是使用 jwt 的 facebook 或 twitter 身份验证服务器),我应该使用它而不是创建我自己的。我不确定是否有可以使用的 jwt 身份验证服务器,并且我不知道处理 jwt 令牌的最佳方法是什么,例如,如果我有一个将内容提交给控制器操作的表单,如何放置请求中的 jwt 令牌。对此的任何帮助将不胜感激!

【问题讨论】:

  • 谷歌“C# JWT Authentication Server from scratch”和大量的例子出现了。就核心与标准而言,显然从 Asp.Net 与 Asp.Net Core 的角度来看,唯一真正的区别是它们如何处理请求。 Core 在管道中引入了中间件的概念,并减少了较小负载的整体请求大小。

标签: c# asp.net-mvc jwt


【解决方案1】:

由于这是一项家庭作业,我将尝试提供一个起点,而不是提供代码示例或其他任何东西。

如果您的应用程序设置为使用该权限,则 JWT 可以从另一个授权机构颁发并在您自己的应用程序中使用。例如,我们在内部使用 AWS Cognito 来存储我们的用户,并在我们的每个 Web 应用程序中指定我们的 JWT 令牌由该 Cognito 用户池发行。

我在网上快速浏览了任何可以免费提供此服务的发行人,发现following blog post for Auth0 声称能够免费支持多达 7000 个用户(可能有隐藏费用,我没有'没有完全调查它)

博文中的教程似乎遵循 .Net 标准,而不是核心实现。希望你发现这对你的任务很有用,祝你好运!

【讨论】:

  • 我只是想感谢您抽出宝贵的时间来回答。没有一个可用的服务令人满意,并且考虑到我只有大约 24 小时才能提交,我最终编写了自己的 JWT 生成器/验证器服务器,并且运行良好。至于我的问题的另一部分,这仍然是一个问题,正如我后来发现的那样,解决方案是使用 cookie 将令牌从视图发送到控制器,而不是以每种形式对其进行硬编码并且 标签(正如我还发现的那样,它是一个工作量大的指标)。
猜你喜欢
  • 2019-06-30
  • 1970-01-01
  • 2017-02-26
  • 1970-01-01
  • 2019-09-05
  • 2018-12-13
  • 2020-06-27
  • 2018-08-30
  • 1970-01-01
相关资源
最近更新 更多