在machine.config / web.config中配置全局设置的问题

时间:2018-08-20 15:05:16

标签: .net web-config machine-config

我们的证书即将过期。一旦获得新证书,我将不得不为我们拥有的众多Web应用程序中的每一个编辑web.config文件。

我希望通过将设置放入全局machine.config或web.config文件中来简化此操作。

这是网络应用程序中的原始设置

  <system.identityModel>
    <identityConfiguration>
      <certificateValidation certificateValidationMode="PeerTrust" revocationMode="NoCheck"/>
      <issuerNameRegistry type="System.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
        <trustedIssuers>
          <add thumbprint="<snip>...</snip>" name="idsrv.local"/>
        </trustedIssuers>
      </issuerNameRegistry>
      <securityTokenHandlers>
        <securityTokenHandlerConfiguration>
          <audienceUris>
            <add value="https://itservices.work.com/WebAppName/"/>
          </audienceUris>
        </securityTokenHandlerConfiguration>
      </securityTokenHandlers>
    </identityConfiguration>
  </system.identityModel>

使这个问题棘手的是,AudienceUris元素需要在其中包含应用程序URL。因此,该放置位置不能位于全局web.config中。

所以我把这是全局的web.config。

  <system.identityModel>
    <identityConfiguration>
      <issuerNameRegistry type="System.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
        <certificateValidation certificateValidationMode="PeerTrust" revocationMode="NoCheck"/>
        <trustedIssuers>
          <add thumbprint="<snip>...</snip>" name="idsrv.local"/>
        </trustedIssuers>
      </issuerNameRegistry>
    </identityConfiguration>
  </system.identityModel>

这是在本地web.config中。

  <system.identityModel>
    <identityConfiguration>
      <securityTokenHandlers>
        <securityTokenHandlerConfiguration>
          <audienceUris>
            <add value="https://itservices.work.com/WebAppName/"/>
          </audienceUris>
        </securityTokenHandlerConfiguration>
      </securityTokenHandlers>
    </identityConfiguration>
  </system.identityModel>

运行时出现此错误。

  

ID7029:重复的“”配置元素与   在配置中找到了名称“   部分。

我尝试了在谷歌搜索时发现的各种事情,但是我找不到使它起作用的方法。

有什么建议吗?

谢谢

0 个答案:

没有答案