Ejemplos de capa de canal de seguridad
En los ejemplos siguientes se muestra la seguridad en la capa de canal.
Seguridad de transporte de Windows a través de TCP: Cliente: RequestReplyTcpClientWithWindowsTransportSecurityExample, Servidor: RequestReplyTcpServerWithWindowsTransportSecurityExample.
Seguridad de transporte de Windows sobre canalizaciones con nombre: Cliente: RequestReplyNamedPipesClientWithWindowsTransportSecurityExample, Server: RequestReplyNamedPipesServerWithWindowsTransportSecurityExample.
Seguridad de transporte SSL: Cliente: HttpClientWithSslExample, Servidor: HttpServerWithSslExample.
Seguridad de nombre de usuario sobre el modo mixto SSL: Cliente: HttpClientWithUsernameOverSslExample, Server: HttpServerWithUsernameOverSslExample.
Nombre de usuario sobre seguridad de modo mixto SSL: Cliente: HttpClientWithKerberosOverSslExample, Server: HttpServerWithKerberosOverSslExample.
Seguridad del nombre de usuario sobre el modo mixto SSL: MetadataImportWithUsernameOverSslExample. Token emitido a través de la seguridad del modo mixto SSL: MetadataImportWithIssuedTokenOverSslExample. Certificado X509 sobre la seguridad del modo mixto SSL: MetadataImportWithX509OverSslExample.
configuración de One-Time para ejemplos de seguridad
Para ejecutar ejemplos de seguridad de WWSAPI, debe configurar los certificados de cliente y servidor para SSL, así como una cuenta de usuario local para la autenticación de encabezado HTTP. Antes de empezar, necesita las siguientes herramientas:
- MakeCert.exe (disponible en el SDK de Windows 7).
- CertUtil.exe o CertMgr.exe (CertUtil.exe está disponible en los SDK de Windows a partir de Windows Server 2003. CertMgr.exe está disponible en el SDK de Windows 7. Solo necesita una de estas herramientas).
- HttpCfg.exe: (Solo necesitas esto si usas Windows 2003 o Windows XP. Esta herramienta está disponible en herramientas de soporte técnico de Windows XP SP2 y también incluye el CD herramientas del kit de recursos de Windows Server 2003).
Si obtiene los ejemplos de WWSAPI mediante la instalación del SDK de Windows 7, puede encontrar el MakeCert.exe y CertMgr.exe en %ProgramFiles%\Microsoft SDKs\Windows\v7.0\bin.
Realice la siguiente configuración de cinco pasos desde el símbolo del sistema (con privilegios elevados si usa Windows Vista y versiones posteriores):
- Genere un certificado autofirmado para que sea la entidad de certificación (CA) o emisor: MakeCert.exe -ss Root -sr LocalMachine -n "CN=Fake-Test-CA" -cy authority -r -sk "CAKeyContainer"
- Genere un certificado de servidor con el certificado anterior como emisor: MakeCert.exe -ss My -sr LocalMachine -n "CN=localhost" -sky exchange -is Root -ir LocalMachine -in Fake-Test-CA -sk "ServerKeyContainer"
- Busque la huella digital (un hash SHA-1 de 40 caracteres) del certificado de servidor mediante la ejecución de cualquiera de los siguientes comandos y busque el certificado denominado localhost con el emisor Fake-Test-CA:
- CertUtil.exe -store My localhost
- CertMgr.exe -s -r LocalMachine My
- Registre la huella digital del certificado de servidor sin espacios con HTTP.SYS:
- En Windows Vista y versiones posteriores (la opción "appid" es un GUID arbitrario): Netsh.exe http add sslcert ipport=0.0.0.0:8443 appid={00112233-4455-6677-8899-AABBCCDDEEFF} certhash=<40CharacterThumbprint>
- En Windows XP o 2003: HttpCfg.exe establecer ssl -i 0.0.0.0:8443 -h <40CharacterThumbprint>
- Creación de un usuario local: Usuario neto "TestUserForBasicAuth" "TstPWD@*4Bsic" /add
Para limpiar los certificados, el enlace de certificados SSL y la cuenta de usuario creada en los pasos anteriores, ejecute los siguientes comandos. Tenga en cuenta si hay varios certificados con el mismo nombre, CertMgr.exe necesitará la entrada antes de eliminarlos.
- CertMgr.exe -del -c -n Fake-Test-CA -s -r LocalMachine Root
- CertMgr.exe -del -c -n localhost -s -r LocalMachine My
- Netsh.exe http delete sslcert ipport=0.0.0.0:8443 (o HttpCfg.exe eliminar ssl -i 0.0.0.0:8443)
- Usuario net "TestUserForBasicAuth" /delete
Asegúrese de que solo haya un certificado raíz denominado Fake-Test-CA. Si no está seguro, siempre es seguro intentar limpiar estos certificados mediante los comandos de limpieza anteriores (y omitir errores) antes de iniciar la configuración de cinco pasos.