c# – 在SSL下显示来自同一域的IFrame
发布时间:2020-12-15 23:25:37 所属栏目:百科 来源:网络整理
导读:我试图将我们页面的登录部分包装在一个用SSL创建的iframe中,并在我们公司网站的几个页面上显示(有点像登录小部件). 但是,我一直在页面上出现错误,呈现iframe,表明: Refused to display in a frame because it set ‘X-Frame-Options’ to ‘SAMEORIGIN’.`
我试图将我们页面的登录部分包装在一个用SSL创建的iframe中,并在我们公司网站的几个页面上显示(有点像登录小部件).
但是,我一直在页面上出现错误,呈现iframe,表明:
我要在其上显示的登录窗口小部件和网页是在同一个域下托管的,这是一个问题吗? 我四处搜索,似乎没有什么能够避免这个问题.有没有人有这个问题的解决方案? <iframe sandbox="allow-same-origin allow-forms allow-scripts" src="https://<sitename>/loginiframewidget.aspx"></iframe> 目前这些是我在web.config中的内容 <httpProtocol> <customHeaders> <add name="access-control-allow-headers" value="content-type" /> <!--<add name="Access-Control-Allow-Origin" value="*" />--> <add name="Content-Security-Policy" value="frame-ancestors 'self' mysite.com.au"/> <add name="X-Frame-Options" value="ALLOWALL"/> </customHeaders> </httpProtocol> 页面上Chrome Dev Tools中显示的标题是: 解决方法
无论如何,此实现存在安全问题.
首先,您无法确定未加密页面的内容在传输时是否未被更改,并且已将iframe的src指向其他位置. 第二个是,即使用户使用SSL登录,他们在cookie中的会话ID也会以明文形式发送,并且很容易被欺骗. 您会考虑在SSL中运行整个站点吗?这些天服务器比你想象的更好地处理这个问题,你不再需要iframe了. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |