远程连接到 Operations Manager Web 控制台时出现 HTTP 500 错误

本文提供了解决远程连接到 Operations Manager Web 控制台时发生的 HTTP 500 错误的解决方案。

原始产品版本: System Center Operations Manager
原始 KB 编号: 4487099

症状

在服务器上安装独立的 Operations Manager Web 控制台。 从远程计算机连接到 Web 控制台 http://<web_host>/OperationsManager 时,会收到以下错误消息:

500 - 内部服务器错误。

如果从 Web 控制台服务器连接到 Web 控制台,则不会出现此问题。

解决方案

若要解决此问题,请执行以下配置和验证,然后再次连接到 Web 控制台:

  1. 注册 SDK SPN。
  2. 验证 SDK SPN。
  3. 注册 HTTP SPN。
  4. 验证 HTTP SPN。
  5. 配置约束委派。
  6. 验证是否未设置“帐户敏感且无法委派”。
  7. 在 IIS 中禁用内核模式身份验证。

注意

以下示例名称用于配置和验证步骤。 必须将它们替换为环境中的名称。

  • SCOMMS。Lab.Local - System Center Operations Manager (SCOM) 管理服务器的完全限定域名 (FQDN)
  • SCOMWeb.Lab.Local - 托管 SCOM Web 控制台的服务器的 FQDN
  • Lab\SDKSvc - SCOM 数据访问服务帐户 (可选)
  • Lab\SCOMAppPool - SCOM 应用程序池标识帐户 (可选)
  • https://mySCOM.Lab.Local/OperationsManager - 用于访问 Operations Manager Web 控制台的 URL (如果没有 URL,请将它替换为 Operations Manager Web 控制台服务器名称。)

SDK SPN

注册 SDK SPN

若要) 注册 System Center Data Access (SDK) 服务主体名称 (SPN,请根据不同的方案运行以下命令:

  • 方案 1

    SDK 服务在 LocalSystem 帐户下运行

    Setspn.exe -S MSOMSdkSvc/SCOMMS SCOMMS
    Setspn.exe -S MSOMSdkSvc/SCOMMS.Lab.Local SCOMMS
    
  • 方案 2

    SDK 服务在域帐户下运行, (SDKSvc)

    Setspn.exe -S MSOMSdkSvc/SCOMMS SDKSvc
    Setspn.exe -S MSOMSdkSvc/SCOMMS.Lab.Local SDKSvc
    

验证 SDK SPN

若要验证 SDK 服务是否已注册,请根据不同的方案运行以下命令:

  • 方案 1

    SDK 服务在 LocalSystem 帐户下运行

    Setspn.exe -L SCOMMS
    
  • 方案 2

    SDK 服务在域帐户下运行, (SDKSvc)

    Setspn.exe -L SDKSvc
    

HTTP SPN

注册 HTTP SPN

若要注册 HTTP SPN,请根据不同的方案运行以下命令:

  • 方案 1

    Web 控制台应用程序池在默认标识下运行 (ApplicationPoolIdentity)

    Setspn.exe -S HTTP/mySCOM SCOMWeb 
    Setspn.exe -S HTTP/mySCOM.Lab.Local SCOMWeb
    
  • 方案 2

    Web 控制台应用程序池在自定义标识下运行 (Lab\SCOMAppPool)

    Setspn.exe -S HTTP/mySCOM SCOMAppPool 
    Setspn.exe -S HTTP/mySCOM.Lab.Local SCOMAppPool
    

验证 HTTP SPN

若要验证 HTTP 服务是否已注册,请根据不同的方案运行以下命令:

  • 方案 1

    Web 控制台应用程序池在默认标识下运行 (ApplicationPoolIdentity)

    Setspn.exe -L SCOMWeb
    
  • 方案 2

    Web 控制台应用程序池在自定义标识下运行 (Lab\SCOMAppPool)

    Setspn.exe -L SCOMAppPool
    

配置约束委派

若要配置约束委派,请执行以下步骤:

  1. 启动Active Directory 用户和计算机控制台。

  2. 在控制台树中,选择“ 计算机”。

  3. 根据不同的方案打开属性:

    • 方案 1:Operations Manager Web 应用程序池在默认标识下运行, (ApplicationPoolIdentity)

      右键单击安装了 Web 控制台的计算机, (SCOM Web) 并选择 “属性”。

    • 方案 2:Operations Manager Web 应用程序池在自定义标识下运行, (Lab\SCOMAppPool)

      右键单击在自定义标识上配置的用户 (Lab\SCOMAppPool) 并选择 “属性”。

  4. 在详细信息窗格中,选择“ 委派”。

  5. 在“ 委派 ”选项卡上,选择“ 仅信任此计算机以委派指定服务”,然后相应地选择以下选项之一:

  6. 选择“添加”。

  7. 在“ 添加服务 ”对话框中,选择“ 用户或计算机”。

  8. “选择用户或计算机 ”对话框中,根据不同的方案指定帐户:

    • 方案 1:SDK 服务在 LocalSystem 帐户下运行

      (SCOMMS) 选择 SCOM 管理服务器的计算机帐户,然后选择“ 确定”。

    • 方案 2:SDK 服务在域帐户下运行 (SDKSvc)

      选择运行 SDK 服务的域帐户,然后选择“ 确定”。

  9. 在“ 添加服务 ”对话框中,选择服务类型 MSOMSdkSvc ,然后选择“ 确定”。

  10. 选择“ 确定” 关闭“ 属性 ”对话框。

验证“帐户敏感且无法委派”是否未设置

若要验证登录 Web 控制台的用户是否没有 帐户是否敏感且无法进行委派 设置,请执行以下步骤:

  1. 启动Active Directory 用户和计算机控制台。
  2. 右键单击用于连接到 Web 控制台的用户帐户,然后选择“ 属性”。
  3. 选择“ 帐户”。
  4. 在“ 帐户选项 ”对话框中,确认未选中“ 帐户敏感且无法委派 ”复选框。

在 IIS 中禁用内核模式身份验证

若要在 IIS 中为 MonitoringViewOperationsManager 禁用内核模式身份验证,请执行以下步骤:

  1. 在 IIS 管理器中,导航到 “默认网站\MonitoringView”。
  2. 双击“ 身份验证”。
  3. 选择“ Windows 身份验证”。
  4. 在右侧的“ 操作 ”窗格中,选择“ 高级设置”。
  5. 清除 “启用内核模式身份验证 ”复选框。
  6. 导航到 “默认网站\OperationsManager”,并重复步骤 2 到步骤 5。