我有一个在IIS 8.5 / Windows Server 2012上运行的ASP.NET MVC 5 Web应用程序 . 它使用Keycloak进行OpenId Connect身份验证 .

当会话状态模式是InProc时,这工作正常,会话进行身份验证并成功创建cookie . 但是,当会话状态处于SQL Server模式时,它将进入无限循环,重定向到身份提供程序并重定向到应用程序 .

通过OpenId Connect通知中的断点,我可以确认安全令牌已经过验证,这使我相信序列化某些问题 . 但我不确定它究竟是什么,因为没有记录错误 . 通常,如果您尝试将某些内容保留到不可序列化的会话存储中,则会抛出异常 .

这是一个已知问题,还是有配置解决方法来处理它?其他未通过OpenId Connect进行身份验证的应用程序正在成功使用SQL会话状态 .