Am trei exemple de aplicație: locală, Staging (la distanță) și Production (la distanță). Toate trei rulează IIS 10. Local este Windows 10, cele două servere la distanță sunt Windows Server 2016.
Toate trei au applicationHost.config configurat astfel:
<configuration>
<configSections>
<sectionGroup name="system.webServer">
<sectionGroup name="security">
<section name="access" overrideModeDefault="Deny" />
</sectionGroup>
</sectionGroup>
</configSections>
<location path="mbrs">
<system.webServer>
<security>
<access sslFlags="Ssl, SslNegotiateCert, SslRequireCert, Ssl128" />
</security>
</system.webServer>
</location>
</configuration>
Local și Staging respectă această configurație, iar Editorul de configurare IIS va identifica corect locația de stocare a steagurilor SSL ca fiind blocată de și în applicationHost.config. Schimbarea overrideModeDefault în „Allow” sau adăugarea overrideMode="Allow" la eticheta de locație va elimina blocarea. Schimbarea overrideModeDefault în „Permite”, și adăugarea overrideMode="Deny" la eticheta de locație va aplica blocarea.
Producție, nu respectă blocarea sub nicio circumstanță și va permite întotdeauna salvarea steagurilor SSL în web.config.
Citirea amănunțită a documentației Microsoft mă face să cred că nu există alte fișiere de configurare sau valori care ar putea afecta această situație, dar din moment ce serverul nostru de producție este cel care aparent încalcă regulile de blocare, sper mai degrabă că mă înșel!
Ce îmi lipsește?