Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# IdentityServer4:调用连接/结束会话终结点并还原会话Cookie:用户再次登录_C#_.net_Identityserver4 - Fatal编程技术网

C# IdentityServer4:调用连接/结束会话终结点并还原会话Cookie:用户再次登录

C# IdentityServer4:调用连接/结束会话终结点并还原会话Cookie:用户再次登录,c#,.net,identityserver4,C#,.net,Identityserver4,在我们公司,我们使用IdentityServer进行身份验证和授权。我们公司主张的安全策略之一是,当您备份cookie时,注销(删除本地应用程序cookie并将用户重定向到connect/endsession端点)并恢复cookie,即用户不再神奇地再次登录。然而,对于IdentityServer4,情况就是这样 我考虑在数据库中创建一个单独的表来保存IdentityServer会话,当调用connect/endsession端点时,该会话将从数据库中删除 我的问题:IdentityServer

在我们公司,我们使用IdentityServer进行身份验证和授权。我们公司主张的安全策略之一是,当您备份cookie时,注销(删除本地应用程序cookie并将用户重定向到connect/endsession端点)并恢复cookie,即用户不再神奇地再次登录。然而,对于IdentityServer4,情况就是这样

我考虑在数据库中创建一个单独的表来保存IdentityServer会话,当调用connect/endsession端点时,该会话将从数据库中删除

我的问题:IdentityServer4中是否有一个接口可以实现:

  • 将会话保存到自定义存储(在本例中为数据库)
  • 如果调用了connect/endsession端点,则删除会话
  • 如果用户点击连接/授权端点,IdentityServer4将在自定义存储中查看当前会话是否仍然有效
  • 我尝试使用IUserSession创建一个类,因为它有RemoveSessionIdCookieAsync方法,但似乎在注销时不会调用它


    提前感谢。

    我们已经使用ITicketStore接口并设置相关CookieAuthenticationOptions的SessionStore属性为IDS4实现发布的Cookie实现了服务器端存储

    通过此界面,您可以访问AuthenticationTicket,从而访问有关用户的所有信息,从而可以在DB中存储任何您喜欢的内容,以便在给定用户注销时为其清除票据


    使用此方法,您不必修改任何IDS4行为,因为用户当前是否经过身份验证都由cookie中间件处理

    谢谢,这正是我要找的。欲了解更多信息,请阅读以下内容: