Mensaje de error en los clientes de CCF que tiene instalado el SP1 de.NET Framework: "el encabezado de autenticación recibido del servidor era 'Negotiate'"

Se aplica a: .NET Framework 3.5 Service Pack 1

Síntomas


Cuando utiliza una aplicación de escritorio de agente o Microsoft Management Console (MMC) en un entorno que está ejecutando Microsoft Customer Care Framework (CCF), los clientes de Windows que tienen el Microsoft.NET Framework 3.5 Service Pack 1 (SP1) instalado reciben el mensajes de error en el registro de aplicación del Visor de sucesos siguientes:mensaje de Error 1
ListenerConfiguration ha detectado un problema al intentar obtener acceso al servicio de configuración web. La solicitud HTTP no está autorizada con el esquema de autenticación de cliente 'Negotiate'. El encabezado de autenticación recibido del servidor era 'Negotiate'.
Mensaje de error 2
ListenerConfiguration ha detectado un problema al intentar obtener acceso al servicio de configuración web. La solicitud HTTP no está autorizada con el esquema de autenticación de cliente "Negotiate, NTLM". El encabezado de autenticación recibido del servidor era 'Negotiate'.
Además, si utiliza escritorio agente, la aplicación no se inicia. Este problema se produce si las direcciones URL de extremo que se utilizan en los archivos de configuración de escritorio del agente y en la base de datos de CCFInfrastructure señalan al nombre NetBIOS real del servidor que aloja los servicios Web de CCF. Si utiliza MMC junto con el nombre NetBIOS del servidor Web CCF o con el nombre de dominio completo (FQDN) que aparece en el cuadro Conectar a , la conexión no es correcta. Además, verá un mensaje de error similar al siguiente en el registro de sucesos del sistema:Nota el servidor Web CCF es el servidor que ejecuta Servicios de Internet Information Server (IIS).

Causa


Este problema se produce debido a los cambios de seguridad y autenticación que están relacionados con Windows Communication Framework (WCF) en el 1 de.NET Framework 3.5 Service Pack para obtener más información, consulte la sección 2.3.2 del archivo Léame de .NET 3.5 Service Pack 1. Para ver este archivo, visite el siguiente sitio Web de Microsoft:

Solución


Para resolver este problema, siga estos pasos:
  1. Configurar un alias denominado CNAME para el servidor IIS CCF en el DNS. Para ello, siga estos pasos: Notas
    • El nombre se usa en direcciones URL de extremo en el escritorio de agente, en la consola MMC y en el sitio Web de servicios de archivos de configuración.
    • Debe ser un administrador de dominio y un administrador DNS para realizar estos pasos.
    1. En el equipo del controlador de dominio que ejecute DNS, haga clic en Inicio, seleccione Todos los programas, haga clic en Herramientas administrativasy, a continuación, haga clic en DNS.
    2. Expanda el nodo del controlador de dominio .
    3. Expanda el nodo Zonas de búsqueda directa .
    4. Haga clic en el nombre completo de CCF.
    5. Pulse el botón derecho en el panel derecho.
    6. Haga clic en Alias nuevo (CNAME).
    7. En el cuadro de diálogo Nuevo registro de recursos , escriba el nombre de alias. Por ejemplo, escriba el nombre del equipo IIS CCF alias junto con el FQDN del servidor IIS CCF.
    8. Agregar el host necesarios y, a continuación, haga clic en Listo.
  2. En el equipo cliente, agregue la dirección URL de HTTP del equipo IIS CCF alias y del alias CCF IIS FQDN a la lista de Sitios de Intranet Local .
  3. Cambiar todos los nombres de servidor en direcciones URL de extremo de "IIS CCF nombre real del servidor o nombre de dominio completo" para el nombre de alias CCF IIS o el alias CCF IIS FQDN. Debe hacerlo en los siguientes archivos o direcciones URL:
    • El archivo Agentdesktop.exe.config en el cliente.
    • El archivo Mmc.exe.config para MMC.
    • Todas las CCF servicios Web archivos Web.config en el servidor IIS CCF.
    • Todas las URL de extremo en la base de datos de Microsoft SQL Server CCFInfrastructure.
  4. En el símbolo del sistema, ejecute el comando SetSpn para registrar el nombre principal de servicio (SPN) de la información de host/CCFAlias y la información de host/CCFAlias.fabrikam.com para la cuenta que ejecuta el grupo de aplicaciones de servicios Web de CCF en IIS. Por ejemplo, utilice el comando SetSpn para registrar el SPN "ASPUSER". Nota: Debe iniciar sesión como administrador del dominio para realizar este paso. Para descargar la herramienta Setspn.exe, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    Actualización de herramientas de soporte técnico 970536 Setspn.exe para Windows Server 2003
    Los dos ejemplos siguientes muestran cómo ejecutar el comando SetSpn :
    setspn –S host/CCFIISAlias MyDomain\MyCCFAppPoolServiceAccount
    setspn –S host/CCFIISAlias.mydomain.com MyDomain\MyCCFAppPoolServiceAccount
  5. Siga uno de estos procedimientos para purgar los vales en el cliente:
    • Reinicie los equipos cliente.
    • Espere a que los vales de Kerberos para que caduque en los equipos cliente.
    • Utilice el archivo Kerbtray.exe desde el Kit de recursos de Windows.
  6. Escritorio de agente de prueba y MMC. Nota: En la MMC, asegúrese de que escribe el nombre de alias CCF IIS en lugar del nombre del servidor IIS CCF en el cuadro Conectar a .
Nota: Aplicaciones Web que se ejecutan en IIS 7.0 utilizan una nueva característica que se denomina autenticación de modo Kernel para realizar la autenticación de Windows. Esta característica permite configuración simplificada de SPN y para obtener un rendimiento mejorado de autenticación. De forma predeterminada, IIS 7.0 permite esta característica. IIS 7.0 no utiliza la identidad del grupo de aplicaciones para descifrar vales Kerberos durante la autenticación de Windows. Si utilizas CCF 2009 junto con IIS 7.0 o con Windows Server 2008, debe establecer un indicador en el servidor que está ejecutando el archivo de configuración de IIS para utilizar las credenciales del grupo de aplicaciones para la autorización. Para establecer este indicador, siga estos pasos:
  1. En el servidor de IIS 7.0, abra un símbolo del sistema como el usuario administrador.
  2. Ejecute el siguiente comando:
    Notepad.exe C:\Windows\System32\inetsrv\config\applicationHost.config
  3. En la configuración de XML, cambie la configuración de autenticación para todos los servicios del marco de cooperación que se hospedan en el grupo de aplicaciones y que se ejecutan bajo la cuenta de usuario de DOMAIN\CCFAppPoolSERVICEAccount. El siguiente es un ejemplo de cambio de la configuración necesaria:
       <location path="Default Web Site/Microsoft.Ccf.Csr.WebServices.AgentCredentials">        <system.webServer>            <directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension" />          <handlers accessPolicy="Read, Execute, Script" />           <security>                <authentication>                    <windowsAuthentication enabled="true" useKernelMode=”true” useAppPoolCredentials=”true”>                        <providers>                            <clear />                            <add value="Negotiate" />                        </providers>                    </windowsAuthentication>                    <anonymousAuthentication enabled="true" />                    <digestAuthentication enabled="false" />                    <basicAuthentication enabled="false" />                </authentication>            </security>            <defaultDocument enabled="true">                <files>                    <clear />                    <add value="Default.htm" />                    <add value="Default.asp" />                    <add value="index.htm" />                    <add value="index.html" />                    <add value="iisstart.htm" />                    <add value="default.aspx" />                </files>            </defaultDocument>        </system.webServer>    </location>
  4. Cambiar todas las configuraciones de los servicios Web de CCF tal como se describe en este artículo. Reemplazar el atributo de ruta de acceso para cada elemento de ubicación utilizando el atributo de ruta de acceso apropiada. Los servicios Web de CCF en CCF 2009 son los siguientes:
    • Microsoft.Ccf.Csr.WebServices.AgentCredentials
    • Microsoft.Ccf.Csr.WebServices.AdminConsole
    • Microsoft.Ccf.Csr.WebServices.ContactCenterAIF
    • Microsoft.Ccf.Csr.WebServices.ContactCenter
    • Microsoft.Ccf.Csr.WebServices.Customer
    • Microsoft.Ccf.WebServices.Gateway
    • Microsoft.Ccf.Samples.DemoWebApplication
    • Microsoft.Ccf.Samples.MultichannelServer
    • Microsoft.Ccf.Samples.MultichannelSite
    • Microsoft.Ccf.Csr.WebServices.ContactCenter.AgentLoginManager
    • Microsoft.Ccf.ConfigurationSystem.Server.ConfigurationService
    • Microsoft.Ccf.ConfigManagementDataService

Más información


Pasos para reproducir el problema

  1. Asegúrese de que el equipo cliente tiene instalados los programas siguientes:
    • Windows XP Service Pack 3 (SP3)
    • .NET Framework 3.5 SP1
    • CCF 2009 agente escritorio o la consola MMC
  2. Asegúrese de que un equipo es un servidor Web CCF que está ejecutando Windows Server 2003 SP2 o Windows Server 2008. Asegúrese de que el otro equipo tiene el servidor SQL 2005 instalada.
  3. Asegúrese de que un equipo es un controlador de dominio que ejecuta Windows Server 2003 SP2 o Windows Server 2008.
  4. Asegúrese de que todos los equipos están configurados para la autenticación Kerberos o la autenticación de Windows.
  5. En un equipo cliente que tiene la siguiente configuración, inicie el agente de escritorio:
    • Está instalado el Service Pack 1 de.NET Framework 3.5.
    • CCF 2009 agente Desktop está instalado.
    • Seleccione las direcciones URL de extremo en el archivo de configuración de escritorio del agente (agentdesktop.exe.config) para el nombre NetBIOS o FQDN del servidor IIS CCF.

Referencias


Para obtener más información acerca del comando SetSPN , visite el siguiente sitio Web de Microsoft:Para obtener más información acerca de herramientas de soporte de Windows 2003 SP1, visite el siguiente sitio Web de Microsoft:Para obtener más información acerca del archivo Kerbtray.exe en el Kit de recursos de Windows 2003, visite el siguiente sitio Web de Microsoft: