Configurar Apache para usar la autenticación de SQL Server

Configurar Apache para usar la autenticación de SQL Server

Creo que es posible configurar Apache para usar SQL Server para la autenticación. Usted proporciona los parámetros de conexión de base de datos y una consulta para ejecutar. Supongo que el contrato es algo como:

Si la consulta devuelve algo, el usuario está autenticado y si los resultados de la consulta están vacíos, el usuario es desconocido.

¿Alguien sabe cómo puedo configurar esto?

Respuesta1

Me acabo de dar cuenta de esto para Apache 2.4 en Windows 2012. Creo que los cambios serían menores para Apache 2.2.

Descomente las líneas LoadModule necesarias en httpd.conf:

  • authn_dbd_module
  • authn_dbm_module
  • módulo_dbd

Realice una conexión ODBC al servidor SQL:
Administrador de fuente de datos ODBC, DNS del sistema, Agregar.... Complete su información específica y recuerde el "Nombre" para más adelante.

Configurar la autenticación en Apache:

DBDriver odbc
DBDParams "datasource=<Name here>,user=...,password=..."

<Location /secure>
   AuthType Basic 
   AuthName "Secure Area" 
   AuthBasicProvider dbd
   Require valid-user
   AuthDBDUserPWQuery "SELECT '$apr1$' + PasswordSalt + '$' + Password FROM <your table> WHERE UserName = %s"
</Location>

Espero que te lleve en la dirección correcta.

Respuesta2

No sé si se admite mssql. Tal vez si lo agregas a pam y luego revisas eso. mod_auth_mysql es para mysql, mod_auth_pgsql para postgresql y mod_auth_dbi para interfaz de base de datos genérica.

información relacionada