Esta noticia ha sido probado por especialistas así se asegura la exactitud de esta crónica.
Descripción: | Autenticación HTTP básica |
---|---|
Estado: | Base |
ModuleIdentifier: | auth_basic_module |
Archivo fuente: | mod_auth_basic.c |
Compatibilidad: | Disponible en Apache 2.1 y posterior |
Resumen
Este módulo permite el uso de la autenticación básica HTTP para restringir el acceso mediante la búsqueda de usuarios en los proveedores dados. La autenticación HTTP Digest es proporcionada por mod_auth_digest
. Este módulo generalmente debe combinarse con al menos un módulo de autenticación como mod_authn_file
y un módulo de autorización como mod_authz_user
.
Directiva AuthBasicAuthoritative
Descripción: | Establece si la autorización y la autenticación se pasan a módulos de nivel inferior. |
---|---|
Sintaxis: |
AuthBasicAuthoritative On|Off |
Defecto: |
AuthBasicAuthoritative On |
Contexto: | directorio, .htaccess |
Anular: | AuthConfig |
Estado: | Base |
Módulo: | mod_auth_basic |
Normalmente, cada módulo de autorización enumerado en AuthBasicProvider
intentará verificar al usuario, y si el usuario no se encuentra en ningún proveedor, se denegará el acceso. Establecer el AuthBasicAuthoritative
directiva explícitamente para Off
permite que tanto la autenticación como la autorización se transmitan a otros módulos no basados en proveedores si hay sin ID de usuario o regla que coincida con el ID de usuario proporcionado. Esto solo debería ser necesario al combinar mod_auth_basic
con módulos de terceros que no están configurados con el AuthBasicProvider
directiva. Cuando se utilizan dichos módulos, el orden de procesamiento se determina en el código fuente de los módulos y no es configurable.
Directiva AuthBasicFake
Descripción: | Autenticación básica falsa usando las expresiones dadas para nombre de usuario y contraseña |
---|---|
Sintaxis: |
AuthBasicFake off|username [password] |
Defecto: | none |
Contexto: | directorio, .htaccess |
Anular: | AuthConfig |
Estado: | Base |
Módulo: | mod_auth_basic |
Compatibilidad: | Servidor HTTP Apache 2.4.5 y posterior |
El nombre de usuario y la contraseña especificados se combinan en un encabezado de autorización, que se pasa al servidor o servicio detrás del servidor web. Los campos de nombre de usuario y contraseña se interpretan utilizando el analizador de expresiones, que permite establecer tanto el nombre de usuario como la contraseña en función de los parámetros de la solicitud.
Si no se especifica la contraseña, se utilizará el valor predeterminado “contraseña”. Para deshabilitar la autenticación básica falsa para un espacio URL, especifique “AuthBasicFake off”.
En este ejemplo, pasamos un nombre de usuario y una contraseña fijos a un servidor backend.
Ejemplo fijo
AuthBasicFake demo demopass
En este ejemplo, pasamos la dirección de correo electrónico extraída de un certificado de cliente, ampliando la funcionalidad de la opción FakeBasicAuth dentro del SSLOptions
directiva. Al igual que la opción FakeBasicAuth, la contraseña se establece en la fija string “contraseña”.
Ejemplo de certificado
AuthBasicFake "%SSL_CLIENT_S_DN_Email"
Ampliando el ejemplo anterior, generamos una contraseña aplicando un hash a la dirección de correo electrónico con una frase de contraseña fija y pasando el hash al servidor backend. Esto se puede utilizar para acceder a sistemas heredados que no admiten certificados de cliente.
Ejemplo de contraseña
AuthBasicFake "%SSL_CLIENT_S_DN_Email" "%sha1:passphrase-%SSL_CLIENT_S_DN_Email"
Ejemplo de exclusión
AuthBasicFake off
Directiva AuthBasicProvider
Descripción: | Establece los proveedores de autenticación para esta ubicación |
---|---|
Sintaxis: |
AuthBasicProvider provider-name [provider-name] ... |
Defecto: |
AuthBasicProvider file |
Contexto: | directorio, .htaccess |
Anular: | AuthConfig |
Estado: | Base |
Módulo: | mod_auth_basic |
los AuthBasicProvider
La directiva establece qué proveedor se utiliza para autenticar a los usuarios para esta ubicación. El valor por defecto file
proveedor es implementado por el mod_authn_file
módulo. Asegúrese de que el módulo de proveedor elegido esté presente en el servidor.
Ejemplo
AuthType basic AuthName "private area" AuthBasicProvider dbm AuthDBMType SDBM AuthDBMUserFile "/www/etc/dbmpasswd" Require valid-user
Se consulta a los proveedores en orden hasta que un proveedor encuentra una coincidencia para el nombre de usuario solicitado, momento en el que este único proveedor intentará verificar la contraseña. El hecho de no verificar la contraseña no implica que el control se transfiera a los proveedores posteriores.
Los proveedores son implementados por mod_authn_dbm
, mod_authn_file
, mod_authn_dbd
, mod_authnz_ldap
y mod_authn_socache
.
Directiva AuthBasicUseDigestAlgorithm
Descripción: | Verifique las contraseñas con los proveedores de autenticación como si estuviera vigente la autenticación implícita en lugar de la autenticación básica. |
---|---|
Sintaxis: |
AuthBasicUseDigestAlgorithm MD5|Off |
Defecto: |
AuthBasicUseDigestAlgorithm Off |
Contexto: | directorio, .htaccess |
Anular: | AuthConfig |
Estado: | Base |
Módulo: | mod_auth_basic |
Compatibilidad: | Servidor HTTP Apache 2.4.7 y posterior |
Normalmente, cuando se utiliza la autenticación básica, los proveedores enumerados en AuthBasicProvider
Intente verificar a un usuario comprobando sus almacenes de datos para un nombre de usuario y contraseña asociados coincidentes. Las contraseñas almacenadas suelen estar cifradas, pero no necesariamente; cada proveedor puede elegir su propio esquema de almacenamiento de contraseñas.
Cuando usas AuthDigestProvider
y autenticación implícita, los proveedores realizan una verificación similar para encontrar un nombre de usuario coincidente en sus almacenes de datos. Sin embargo, a diferencia del caso de la autenticación básica, el valor asociado con cada nombre de usuario almacenado debe ser un string compuesto por el nombre de usuario, el nombre de dominio y la contraseña. (Ver RFC 2617, Sección 3.2.2.2 para obtener más detalles sobre el formato utilizado para este cifrado string.)
Como consecuencia de la diferencia en los valores almacenados entre la autenticación básica y la autenticación implícita, la conversión de la autenticación implícita a la autenticación básica generalmente requiere que a todos los usuarios se les asignen nuevas contraseñas, ya que sus contraseñas existentes no se pueden recuperar del esquema de almacenamiento de contraseñas impuesto a aquellos proveedores que admite la autenticación implícita.
Establecer el AuthBasicUseDigestAlgorithm
directiva para MD5
hará que la contraseña de autenticación básica del usuario se verifique utilizando el mismo formato cifrado que para la autenticación implícita. Primero un string compuesto a partir del nombre de usuario, el nombre del reino y la contraseña con hash con MD5; luego el nombre de usuario y este cifrado string se pasan a los proveedores enumerados en AuthBasicProvider
como si AuthType
estaba configurado para Digest
y la autenticación implícita estaba en vigor.
Mediante el uso de AuthBasicUseDigestAlgorithm
un sitio puede cambiar de autenticación implícita a básica sin requerir que se asignen nuevas contraseñas a los usuarios.
El proceso inverso de cambiar de autenticación básica a autenticación implícita sin asignar nuevas contraseñas generalmente no es posible. Solo si las contraseñas de autenticación básica se han almacenado en texto plano o con un esquema de cifrado reversible, será posible recuperarlas y generar un nuevo almacén de datos siguiendo el esquema de almacenamiento de contraseñas de autenticación implícita. Solo los proveedores que admiten la autenticación implícita podrán autenticar a los usuarios cuando AuthBasicUseDigestAlgorithm
se establece en MD5
. El uso de otros proveedores resultará en una respuesta de error y se le negará el acceso al cliente.
Reseñas y calificaciones del tutorial
Eres capaz de amparar nuestra investigación escribiendo un comentario y dejando una valoración te estamos eternamente agradecidos.