使用第三方 cookie 进行身份验证,使用 Web 服务进行授权

Use third party cookie for authentication and web service for authorization

我是 ASP.NET 核心应用程序的新手,我需要你的帮助。基本上我设计了一个新的 ASP .NET core 5.0 web (MVC) 应用程序。

我需要使用 third-party in-house 身份验证。 third-party认证的实现方法如下

第 1 步:检查 Cookie

第 2 步:验证 Cookie

  1. third-party application/web 服务设置 cookie。此应用程序将与 asp.net 核心应用程序
  2. 在同一个域中
  3. cookie value/token 的验证是通过对 third-part 服务的 WCF 调用完成的,它还支持 REST。
  4. tokenObj 还将包含有关特定 asp.net 核心应用程序的已登录用户角色的信息。我该如何在授权模型中实现它?

总结: ASP.NET 核心 MVC 应用程序不执行任何身份验证或获取用户凭据。根据说明,它应该简单地检查特定的 cookie,如果 cookie 不存在 re-direct 到第 3 方应用程序以进行登录,如果 cookie 存在,则针对 Web 服务进行验证,这将提供用户的详细信息,包括角色。

我已经阅读了一些关于 cookie 验证和声明身份的文章,但我对如何在 ASP.net 核心中以正确的方式实施此过程感到有点困惑。

如有任何帮助,我们将不胜感激。

最终创建了一个自定义中间件引用- > https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware/write?view=aspnetcore-5.0

以及会话管理 -> https://docs.microsoft.com/en-us/aspnet/core/fundamentals/app-state?view=aspnetcore-5.0