Ayuda para IBM HTTP Server: Autentificación de cliente

Autentificación de clientes

El servidor da soporte a tres niveles de autentificación de clientes y a dos tipos de control de accesos basados en la información de certificación de clientes.

Nivel de autentificación de clientes

El nivel se establece con la directiva SSLCLientAuth:

Si selecciona "obligatoria"...

Si selecciona el nivel de autentificación de clientes obligatoria, el servidor seguro solicita un certificado a todos los clientes que efectúan una petición https. El servidor valida los clientes mediante la comprobación de los certificados de raíz fiable de CA en la base de datos de claves local. Un certificado de raíz fiable de CA es un certificado firmado por una autoridad de certificación que está designada como CA fiable en el servidor.

El servidor establece una conexión segura si el cliente tiene un certificado válido. El servidor deniega la petición si el cliente tiene un certificado que ha caducado o si el certificado está firmado por una autoridad de certificación (CA) que no está designada como CA fiable en el servidor.

Es necesario tener en cuenta que la autentificación de clientes SSL incrementa el tráfico de la red.

Si selecciona "opcional"...

Si selecciona el nivel opcional, el servidor solicita un certificado del cliente. Incluso si el cliente no lo proporciona, se establecerá una conexión segura. El servidor deniega la petición si el cliente ha proporcionado un certificado que ha caducado o si el certificado está firmado por una autoridad de certificación (CA) que no está designada como CA fiable en el servidor.

Es necesario tener en cuenta que la autentificación de clientes SSL incrementa el tráfico de la red.

Si selecciona "ninguna"...

Si selecciona ninguna, el servidor seguro no solicita certificados de los clientes.

Tipos de control de accesos basados en la información de certificación de clientes

El tipo se establece con las directivas SSLFakeBasicAuth o SSLClientAuthRequire.

Nota: SSLClientAuthRequire es el tipo de autentificación de clientes preferible.

Directiva SSLFakeBasicAuth

No se recomienda la utilización de SSLFakeBasicAuth. Los archivos de contraseñas generados para su uso con código SSL de Apache (o mod_ssl y Apache) no funcionarán con IBM HTTP Server ya que el formato del nombre distintivo es distinto.

El tipo SSLFakeBasicAuth es un método muy simplista para efectuar la autentificación de clientes. Si se especifica SSLFakeBasicAuth, el nombre distinguido de certificado del cliente y la contraseña (que es "password") están codificados con Base64 y ubicados en la cabecera de autorización. El módulo mod_ibm_ssl debe ser el primer módulo de la lista de módulos, de forma que los módulos de autentificación subsiguientes tengan el ID de usuario de autentificación básica falsa y la contraseña disponibles. Tenga en cuenta que el soporte de autentificación básica dentro de un sistema principal virtual no funcionará debido a que el nombre distinguido y la contraseña del cliente (que es "password") sobreescribirán el ID de usuario y la contraseña proporcionados por un usuario.

Para visualizar el nombre distinguido de un certificado de cliente, cree un programa CGI para imprimir la variable de entorno SSL_CLIENT_DN.

Directiva SSLClientAuthRequire

El soporte más amplio SSLClientAuthRequire permite al administrador de web definir expresiones lógicas que contienen los atributos x509. Entonces estas expresiones lógicas se comparan con la información de certificación del cliente para otorgar o denegar el acceso a un objeto. Sin embargo, antes de que pueda producirse todo este proceso, GSK valida primero el certificado del cliente para asegurarse de que esté firmado por una autoridad de certificación fiable.

La directiva SSLClientAuthRequire permite que un administrador de web cree una expresión lógica que consta de comprobaciones de atributos enlazadas con AND, OR y NOT. También se permiten los paréntesis. Por ejemplo:

SSLClientAuthRequire (CommonName = "Fred Smith" OR CommonName = "John Deere") AND Org = IBM
significa que no se servirá el objeto a menos que el certificado del cliente contenga un nombre que sea Fred Smith o John Deere y que la organización sea IBM.

Para las comprobaciones de atributos, las únicas comparaciones válidas son igual y no igual (= y !=). Cada comprobación de atributos puede enlazarse con AND, OR o NOT (también &&, || y !). Cuando se especifican varias directivas SSLClientAuthRequire para un recurso, el efecto sobre el recurso es como si los valores estén unidos por operadores AND booleanos.

Se pueden utilizar paréntesis para agrupar comparaciones. Si el valor del atributo contiene un carácter no alfanumérico, el valor debe delimitarse con comillas.

Los atributos válidos son los siguientes:

IssuerStateOrProvince 
IssuerCommonName 
IssuerOrgUnit 
IssuerCountry 
IssuerLocality 
IssuerOrg 
IssuerEmail 
StateOrProvince 
CommonName 
OrgUnit 
Country 
Locality 
Org 
Email 

También son válidas las abreviaturas:

     IST, ICN, IOU, IC, IL, IO, IE, ST, CN, OU, C, L, O, E 

Información relacionada