Asp.net web.config 语法问题
Asp.net web.config syntax issue
我正在开发 asp.net 消除安全漏洞的应用程序。我想讨论的漏洞是“X-XSS Protection”和“clickjacking”。
我通过搜索并遵循了这个 link。我只是使用了标题下的解决方案 'Using <customHeaders>
in Web.Config'
在此之后,当我 运行 应用程序时,我收到 500 内部服务器错误:HTTP Error 500.19 - Internal Server Error
。在 Config Error
标签下的 detailed error information
中,它表示 Unrecognized element 'add'
.
在此之后,我删除了结束标记 </add>
,只留下 <add name="X-Frame-Options" value="DENY"/>
,现在应用程序 运行 正常。
以下几点我需要一些帮助:
- 为什么上面给出的语法 link 不起作用?
- 任何人都可以解释以下几行的意义:
<add name="X-Frame-Options" value="DENY"/> <add name="X-XSS-Protection" value="1; mode=block"/> <add name="X-Content-Type-Options" value="nosniff "/>
一点点我知道这些是额外的安全措施headers。谢谢
链接文章中的格式有几处错误,我已在此处复制...
<httpprotocol>
<customheaders>
<remove name="X-Powered-By">
<add name="X-Frame-Options" value="DENY">
<add name="X-XSS-Protection" value="1; mode=block">
<add name="X-Content-Type-Options" value="nosniff ">
</add></add></add></remove></customheaders>
</httpprotocol>
<httpprotocol>
和 </httpprotocol>
必须是 <httpProtocol>
和 </httpProtocol>
<customheaders>
和 </customheaders>
必须是 <customHeaders>
和 </customHeaders>
<add>
和 <remove>
必须是 <customHeaders>
的直接子代...它们不能嵌套。
- 虽然我不能说 100%,但我相信
"nosiff "
中的 space 可能是一个问题(虽然它可能会被正确处理,但我建议将其删除以防万一浏览器忽略它)
使用 <add></add>
或 <add/>
元素没有区别,只要它们都是 <customHeaders>
元素的直接子元素
<httpProtocol>
<customHeaders>
<remove name="X-Powered-By" />
<add name="X-Frame-Options" value="DENY" />
<add name="X-XSS-Protection" value="1; mode=block" />
<add name="X-Content-Type-Options" value="nosniff" />
</customHeaders>
</httpProtocol>
有关实际选项,请参阅...
我正在开发 asp.net 消除安全漏洞的应用程序。我想讨论的漏洞是“X-XSS Protection”和“clickjacking”。
我通过搜索并遵循了这个 link。我只是使用了标题下的解决方案 'Using <customHeaders>
in Web.Config'
在此之后,当我 运行 应用程序时,我收到 500 内部服务器错误:HTTP Error 500.19 - Internal Server Error
。在 Config Error
标签下的 detailed error information
中,它表示 Unrecognized element 'add'
.
在此之后,我删除了结束标记 </add>
,只留下 <add name="X-Frame-Options" value="DENY"/>
,现在应用程序 运行 正常。
以下几点我需要一些帮助:
- 为什么上面给出的语法 link 不起作用?
- 任何人都可以解释以下几行的意义:
<add name="X-Frame-Options" value="DENY"/> <add name="X-XSS-Protection" value="1; mode=block"/> <add name="X-Content-Type-Options" value="nosniff "/>
一点点我知道这些是额外的安全措施headers。谢谢
链接文章中的格式有几处错误,我已在此处复制...
<httpprotocol>
<customheaders>
<remove name="X-Powered-By">
<add name="X-Frame-Options" value="DENY">
<add name="X-XSS-Protection" value="1; mode=block">
<add name="X-Content-Type-Options" value="nosniff ">
</add></add></add></remove></customheaders>
</httpprotocol>
<httpprotocol>
和</httpprotocol>
必须是<httpProtocol>
和</httpProtocol>
<customheaders>
和</customheaders>
必须是<customHeaders>
和</customHeaders>
<add>
和<remove>
必须是<customHeaders>
的直接子代...它们不能嵌套。- 虽然我不能说 100%,但我相信
"nosiff "
中的 space 可能是一个问题(虽然它可能会被正确处理,但我建议将其删除以防万一浏览器忽略它)
使用 <add></add>
或 <add/>
元素没有区别,只要它们都是 <customHeaders>
元素的直接子元素
<httpProtocol>
<customHeaders>
<remove name="X-Powered-By" />
<add name="X-Frame-Options" value="DENY" />
<add name="X-XSS-Protection" value="1; mode=block" />
<add name="X-Content-Type-Options" value="nosniff" />
</customHeaders>
</httpProtocol>
有关实际选项,请参阅...