浏览器拒绝框架 IdentityServer 3 LogOut Url
Browser refused to frame IdentityServer 3 LogOut Url
我正在尝试使用 idsvr 3 实现单一注销,我有两个客户端应用程序(一个 MVC 5 和一个 asp.net 核心)都注册为客户端并且登录工作完美
MVC 5 - Client A Asp.NET core - Client B
当两个应用程序都已登录并且我在客户端 B 上单击注销 link 时,客户端 A 已成功注销。但反之亦然(首先注销客户端 A)客户端 B 未注销。在检查浏览器的(Chrome 版本 56.0.2924.87)控制台时,我收到以下错误
Refused to frame
'https:/client_B/myDomain/Signout_oidc/?sid=2adc40bd3ae432a81671118b09a'
because it violates the following Content Security Policy directive:
"frame-src 'self' https:/client_B.myDomain https:/client_A.myDomain".
我该如何解决这个问题?
尝试将以下代码添加到您的 IdentityServerOptions
实例中。
CspOptions = new CspOptions
{
FrameSrc = "*"
}
有关如何在文档中的 IdvSrv3 中配置 CSP 的更多信息:
谢谢@Damian,我找到问题所在了。
问题出在客户端 A URL,其中有一个下划线 () 字符。以某种方式违反了 CSP 规则或其他内容。删除 url 中的 '' 字符解决了问题。
我正在尝试使用 idsvr 3 实现单一注销,我有两个客户端应用程序(一个 MVC 5 和一个 asp.net 核心)都注册为客户端并且登录工作完美
MVC 5 - Client A Asp.NET core - Client B
当两个应用程序都已登录并且我在客户端 B 上单击注销 link 时,客户端 A 已成功注销。但反之亦然(首先注销客户端 A)客户端 B 未注销。在检查浏览器的(Chrome 版本 56.0.2924.87)控制台时,我收到以下错误
Refused to frame 'https:/client_B/myDomain/Signout_oidc/?sid=2adc40bd3ae432a81671118b09a' because it violates the following Content Security Policy directive: "frame-src 'self' https:/client_B.myDomain https:/client_A.myDomain".
我该如何解决这个问题?
尝试将以下代码添加到您的 IdentityServerOptions
实例中。
CspOptions = new CspOptions
{
FrameSrc = "*"
}
有关如何在文档中的 IdvSrv3 中配置 CSP 的更多信息:
谢谢@Damian,我找到问题所在了。 问题出在客户端 A URL,其中有一个下划线 () 字符。以某种方式违反了 CSP 规则或其他内容。删除 url 中的 '' 字符解决了问题。