La autenticación de cliente es similar a la autenticación de servidor con la excepción de que el servidor solicita un certificado del cliente a fin de verificar que el cliente es quien dice ser. El certificado debe ser un certificado X.509 y debe estar firmado por una entidad emisora de certificados fiable por parte del servidor. La autenticación de cliente sólo se puede utilizar cuando un servidor solicite un certificado a un cliente. No todos los servidores admiten la autenticación de cliente.
Cuando un servidor solicita un certificado, el cliente tiene la opción de
enviar un certificado o intentar la conexión sin él. El servidor permite la conexión si el certificado de cliente es fiable.
Cuando un cliente intenta conectarse sin un certificado, es posible que el servidor le otorgue acceso de cliente pero con un nivel de seguridad más bajo, tal como se ilustra en la siguiente secuencia de sucesos:
- El cliente envía una solicitud de una sesión SSL al servidor.
- El cliente recibe el certificado del servidor y comprueba su lista de CA fiables. Puesto que el certificado del servidor está firmado por una entidad emisora de certificados fiable, el cliente acepta el certificado.
Después el servidor le pide al cliente un certificado que le identifique.
- El cliente responde enviando un certificado o intentando establecer una sesión sin dicho certificado.
- Si el cliente envía un certificado, el servidor comprueba su lista de certificados fiables. Si el cliente es fiable, se establece la sesión de seguridad. Si el cliente no envía un certificado, normalmente el servidor termina la sesión.