Compartir vía


Configuración de HTTP y HTTPS

Los servicios y clientes de WCF se pueden comunicar a través de HTTP y HTTPS, que se configuran mediante el uso de Internet Information Services (IIS) o de una herramienta de la línea de comandos. Cuando un servicio WCF se hospeda bajo IIS y necesita la configuración de HTTP o HTTPS se puede configurar en IIS (con la herramienta inetmgr.exe). Si el servicio WCF se autohospeda, la configuración de HTTP o HTTPS se configura usando una herramienta de la línea de comandos.

Como mínimo, le interesará configurar un registro de direcciones URL, y agregar una excepción de firewall para la dirección URL que usará el servicio. Puede configurar estos valores con la herramienta Netsh.exe.

Configuración de las reservas de espacios de nombres

La reserva de espacio de nombres asigna los derechos de una parte del espacio de nombres HTTP URL a un grupo de usuarios determinado. Una reserva da derecho a esos usuarios para crear servicios que escuchen en esa parte del espacio de nombres. Las reservas son prefijos de dirección URL, lo que significa que la reserva cubre todas las rutas de acceso secundarias de la ruta de acceso de la reserva. Las reservas de espacio de nombres permiten dos maneras de utilizar los caracteres comodín. En la documentación de la API del servidor HTTP se describe el orden de resolución entre notificaciones de espacios de nombres que supongan caracteres comodín.

Una aplicación en ejecución puede crear una solicitud similar para agregar los registros de espacio de nombres. Los registros y reservas compiten por partes del espacio de nombres. Una reserva puede tener prioridad sobre un registro según el orden de resolución dado en el orden de resolución entre notificaciones de espacios de nombres que supongan caracteres comodín. En este caso, la reserva bloquea a la aplicación en ejecución la posibilidad de recibir solicitudes.

En el ejemplo siguiente se usa la herramienta Netsh.exe:

netsh http add urlacl url=http://+:80/MyUri user=DOMAIN\user

Este comando agrega una reserva de dirección URL para el espacio de nombres de la dirección URL especificada para la cuenta DOMAIN\user. Para más información sobre el uso del comando netsh, escriba netsh http add urlacl /? en un símbolo del sistema y presione Entrar.

Configuración de una excepción de firewall

Cuando se autohospeda un servicio de WCF que se comunica sobre HTTP, se debe agregar una excepción a la configuración del firewall para permitir conexiones de entrada usando una dirección URL determinada.

Configuración de certificados SSL

El protocolo SSL (Capa de sockets seguros) usa los certificados de cliente y servidor para almacenar las claves de cifrado. El servidor proporciona su certificado SSL cuando se realiza una conexión, para que el cliente pueda comprobar la identidad del servidor. El servidor también puede solicitar un certificado del cliente para proporcionar una autenticación mutua de ambos lados de la conexión.

Los certificados se almacenan en un almacén centralizado según la dirección IP y el número de puerto de la conexión. La dirección IP 0.0.0.0 especial coincide con cualquier dirección IP del equipo local. Observe que el almacén de certificados no distingue direcciones URL basadas en la ruta de acceso. Los servicios con la misma dirección IP y combinación de puertos deben compartir los certificados aun cuando la ruta de acceso en la dirección URL de los servicios sea diferente.

Para instrucciones detalladas, consulte Configuración de un puerto con un certificado SSL.

Configuración de la lista de escuchas de IP

La API de servidor HTTP solo se enlaza una vez a una dirección IP y a un puerto, una vez que el usuario haya registrado una dirección URL. De forma predeterminada, el API de servidor HTTP se enlaza al puerto en la URL de todas las direcciones IP del equipo. Se produce un conflicto si una aplicación que no usa la API de servidor HTTP se ha enlazado previamente a esa combinación de dirección IP y puerto. La lista de escucha de IP permite que los servicios WCF coexistan con aplicaciones que utilizan un puerto con algunas de las direcciones IP de la máquina. Si la lista de escucha de IP contiene cualquier entrada, el API de servidor HTTP solo se enlaza a esas direcciones IP que la lista especifica. Para modificar la lista de escuchas de IP se requieren privilegios de administrador.

Use la herramienta netsh para modificar la lista de escucha IP, como se muestra en el ejemplo siguiente:

netsh http add iplisten ipaddress=0.0.0.0:8000

Otras opciones de configuración

Cuando se use la clase WSDualHttpBinding, la conexión de cliente utiliza valores predeterminados compatibles con reservas de espacio de nombres y el Firewall de Windows. Si elige personalizar la dirección base de cliente de una conexión dual, también debe configurar esta configuración de HTTP en el cliente para que coincida con la nueva dirección.

La API de servidor HTTP tiene algunos valores de configuración avanzados que no están disponibles mediante HttpCfg. Estos valores se mantienen en el Registro y se aplican a todas las aplicaciones que se ejecutan en los sistemas que utilizan los API de servidor HTTP. Para información sobre estos valores, consulte Valores de registro de Http.sys para IIS. La mayoría de los usuarios no necesitan cambiar estos valores.

Consulte también