我遇到了一个问题,架构很复杂。 这是具有我神奇的mspaint技能的建筑:
图例:
Client1 - 可以触发登录并注销到SSO的应用程序(框 在最顶层)
Bridge是一个中间SSO,因为client2是net core app,而net core不支持SSO的身份服务器(owin) 当时最顶级的,所以我们不得不把中间桥应用程序 照顾请求。此应用程序使用UseWsFederationAuthentication 对SSO进行身份验证。
客户端2在SSO上进行身份验证,然后SSO向Bridge发送授权响应,如果一切正常,则客户端2已登录。
出现问题时,当我从客户端1注销时,它不会注销客户端2.我缺少什么?如果您需要代码我可以将所有代码放在一起,但是这个架构是否支持?
SSO(wsfed)和Bridge SSO(调用wsfed SSO)在中间然后是客户端?
我启用了使用SeriLog的日志记录,当 endsessioncallback 成为sid参数为空时: 芯/连接/ endsessioncallback?SID =
错误:
w3wp.exe信息:0:2017-02-15 12:22:36.418 +00:00 [信息]请求结束会话回调 2017-02-15 12:22:36.433 +00:00 [调试]没有客户端会话iframe URL
2017-02-15 12:22:36.386 +00:00 [Debug] [2017-02-15T12:22:36.3867557Z] Level = Info,Kind = Begin,Category ='System.Web.Http.ModelBinding ',Id = 00000000-0000-0000-c044-0080000000ea,Operation = HttpActionBinding.ExecuteBindingAsync 2017-02-15 12:22:36.386 +00:00 [Debug] [2017-02-15T12:22:36.3867557Z] Level = Info,Kind = Begin,Category ='System.Web.Http.ModelBinding',Id = 00000000-0000-0000-c044-0080000000ea,Message ='绑定参数'sid'',Operation = ModelBinderParameterBinding.ExecuteBindingAsync 2017-02-15 12:22:36.403 +00:00 [Debug] [2017-02-15T12:22:36.4035482Z] Level = Info,Kind = End,Category ='System.Web.Http.ModelBinding',Id = 00000000-0000-0000-c044-0080000000ea, 消息='模型状态无效。 sid.String:值是必需的但在请求中不存在。', Operation = ModelBinderParameterBinding.ExecuteBindingAsync 2017-02-15 12:22:36.403 +00:00 [Debug] [2017-02-15T12:22:36.4035482Z] Level = Info,Kind = End,Category ='System.Web.Http.ModelBinding',Id = 00000000-0000-0000-c044-0080000000ea,Message ='模型状态无效。 sid.String:值是必需的但在请求中不存在。',Operation = HttpActionBinding.ExecuteBindingAsync
没有提供sid的原因可能是什么情况?