2010-06-08 24 views
7

Me gustaría usar certificados de cliente para verificar la identidad de las personas que llaman a mi servicio web. Luego puedo emitir certificados solo a las personas a las que quiero llamar en mi servicio web y estar seguro de que nadie más puede llamarlo. Esto es en un escenario muy controlado donde solo una o dos personas obtendrán el certificado del cliente, por lo que la distribución no es un problema difícil..net ejemplo de uso de certificados de cliente en la llamada al servicio web?

This article proporciona un buen ejemplo de cómo llamar a un servicio web utilizando un certificado de cliente.

¿Pero cómo puedo verificar los detalles del certificado del cliente desde mi servicio web? This old article habla sobre la configuración de IIS para hacerlo, pero me gustaría hacerlo programáticamente dentro de mi aplicación. ¿Creo?

gracias por cualquier sugerencia!

+1

¿Se refiere a los clientes y servicios de WCF, o se refiere a los servicios web heredados de ASMX? –

+0

Me refiero a los servicios web de asmx – Rory

Respuesta

5

La solicitud entrante tiene una colección ClientCertificates que puede interrogar: puede verificar los diversos campos en el certificado o verificar los datos de bytes crudos reales (tal vez en un almacén de datos u otra fuente) si desea validarlo completamente.

Nota, si emite los certificados de su CA privada, necesitará instalar el certificado de la CA en su servidor web en una tienda visible para todos los usuarios; de lo contrario, IIS no solicitará dichos certificados al usuario (debido a la naturaleza de cómo funciona la interacción servidor/cliente.)

Cuestiones relacionadas