如何在ServiceStack中实现Auth0身份验证?

时间:2018-06-07 14:59:45

标签: .net-core jwt servicestack servicestack-auth

我的设置包含3个组件:

Auth0,我添加用户并管理他们的权限 我的前端SPA网页,作为我的API的外壳 我的API,由ServiceStack制作。

这是我认为的身份验证流程:

用户点击"使用Auth0"登录在客户端应用程序中 然后用户被重定向到Auth0,在那里他登录并接收JWT 此JWT存储在客户端上,并添加到我的API的每个请求中 我的API(ServiceStack)通过检查它是否与Auth0给我的证书相匹配来验证JWT 我的API(ServiceStack)检查用户是否具有所需的权限,由Auth0管理并包含在JWT中。

理想情况下,这应该像向服务中添加[Authorize]和[RequiredPermission]标记一样简单,以配置访问哪些服务所需的权限。

我试图以多种不同的方式实现这一点,但我开始认为我的整个方法存在缺陷,因此很难添加任何代码片段来说明问题。我是否从根本上误解了一些问题,或者这是否应该可以在ServiceStack中设置?我可以使用http://jwt.io/来验证并验证Auth0中的JWT是否正确,问题只是将此验证集成到ServiceStack中。

1 个答案:

答案 0 :(得分:0)

Auto0发布了许多与ServiceStack集成的文档和文章:

对于JWT集成,我在以下位置找到了自定义OAuth0提供程序:

或者查看有关与Auth0 OAuth提供程序集成的答案