Fix for #3510 - health check for http headers was case sensitive, but HTTP spec states http headers are case insensitive
This commit is contained in:
committed by
Sebastiaan Janssen
parent
04a201f5f0
commit
4c86756640
@@ -115,7 +115,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Security
|
||||
|
||||
private bool DoHttpHeadersContainHeader(WebResponse response)
|
||||
{
|
||||
return response.Headers.AllKeys.Contains(_header);
|
||||
return response.Headers.AllKeys.Contains(_header, StringComparer.InvariantCultureIgnoreCase);
|
||||
}
|
||||
|
||||
private bool DoMetaTagsContainKeyForHeader(WebResponse response)
|
||||
@@ -186,24 +186,22 @@ namespace Umbraco.Web.HealthCheck.Checks.Security
|
||||
}
|
||||
|
||||
var removeHeaderElement = customHeadersElement.Elements("remove")
|
||||
.SingleOrDefault(x => x.Attribute("name") != null &&
|
||||
x.Attribute("name")?.Value == _value);
|
||||
.SingleOrDefault(x => x.Attribute("name")?.Value.Equals(_value, StringComparison.InvariantCultureIgnoreCase) == true);
|
||||
if (removeHeaderElement == null)
|
||||
{
|
||||
removeHeaderElement = new XElement("remove");
|
||||
removeHeaderElement.Add(new XAttribute("name", _header));
|
||||
customHeadersElement.Add(removeHeaderElement);
|
||||
customHeadersElement.Add(
|
||||
new XElement("remove",
|
||||
new XAttribute("name", _header)));
|
||||
}
|
||||
|
||||
var addHeaderElement = customHeadersElement.Elements("add")
|
||||
.SingleOrDefault(x => x.Attribute("name") != null &&
|
||||
x.Attribute("name").Value == _header);
|
||||
.SingleOrDefault(x => x.Attribute("name")?.Value.Equals(_header, StringComparison.InvariantCultureIgnoreCase) == true);
|
||||
if (addHeaderElement == null)
|
||||
{
|
||||
addHeaderElement = new XElement("add");
|
||||
addHeaderElement.Add(new XAttribute("name", _header));
|
||||
addHeaderElement.Add(new XAttribute("value", _value));
|
||||
customHeadersElement.Add(addHeaderElement);
|
||||
customHeadersElement.Add(
|
||||
new XElement("add",
|
||||
new XAttribute("name", _header),
|
||||
new XAttribute("value", _value)));
|
||||
}
|
||||
|
||||
doc.Save(configFile);
|
||||
|
||||
Reference in New Issue
Block a user