C# 应用程序启动会触发对crl.microsoft.com和ctldl.windowsupdate.com的请求

C# 应用程序启动会触发对crl.microsoft.com和ctldl.windowsupdate.com的请求,c#,windows,winforms,certificate,C#,Windows,Winforms,Certificate,我正在写一份签名申请书。该应用程序将被部署到一个封闭的网络中,其中大多数出站呼叫将不被允许。我注意到,当我启动应用程序(该应用程序已签名并使用SQLServerCE4)时,大约进行了6次web调用。我接到一个呼叫crl.microsoft.com,两个呼叫ctldl.windowsupdate.com,然后三个呼叫证书颁发机构。问题是,由于这是一个封闭的网络,所有这些调用都返回502个错误。我相信这些电话可能会给我们的应用程序的启动增加明显的延迟时间 这些windowsupdate.com请求是

我正在写一份签名申请书。该应用程序将被部署到一个封闭的网络中,其中大多数出站呼叫将不被允许。我注意到,当我启动应用程序(该应用程序已签名并使用SQLServerCE4)时,大约进行了6次web调用。我接到一个呼叫
crl.microsoft.com
,两个呼叫
ctldl.windowsupdate.com
,然后三个呼叫证书颁发机构。问题是,由于这是一个封闭的网络,所有这些调用都返回502个错误。我相信这些电话可能会给我们的应用程序的启动增加明显的延迟时间


这些windowsupdate.com请求是什么?如何阻止调用它们?

我不是100%确定,但我想您必须通过设置组策略来禁用此行为:

我使用
gpedit.msc
验证以下步骤是否可行。如果他们确实解决了你的问题,我无法核实

  • 在本地组策略编辑器的“计算机配置”节点下,双击“策略”
  • 双击Windows设置,双击安全设置,然后双击公钥策略
  • 在右侧窗格中,双击证书路径验证设置
  • 单击“网络检索”选项卡,单击以选择“定义这些策略设置”,然后单击以清除“在Microsoft根证书程序中自动更新证书(推荐)”复选框
  • 单击确定,然后关闭本地组策略编辑器
  • 还有一个选项卡TrustedPublishers,如果您“定义策略”,则可以保留底部的两个复选框,以便未选中验证证书

    我也不确定SqlServer Compact的内容,但这可以通过在应用程序的配置中添加配置设置来解决,因为SqlCE引擎是在应用程序的过程中加载的

    
    

    基于

    此方法适用于大多数应用程序,但仍有一个请求请求
    crl.microsoft.com/pki/crl/products/MicCodSigPCA_08-31-2010。crl
    此请求在应用程序打开SQL Compact 4数据库时发生。