sql >> Database teknologi >  >> RDS >> Mysql

SVN-godkendelse ved hjælp af MySQL

For det første forskellen.

mod_authn_dbd leverer autentificeringsfront-ends såsom mod_auth_digest og mod_auth_basic til at godkende brugere ved at slå brugere op i SQL-tabeller.

mod_auth_mysql er et Apache-modul, der tillader godkendelse ved hjælp af bruger- og gruppedata gemt i MySQL-databaser. Projektet ser ikke ud til at være blevet opdateret siden 2005, så jeg ville gå efter mod_authn_dbd .

For at konfigurere dette korrekt, skal du først konfigurere mod_authn_dbd og mod_dbd korrekt i din apache-konfiguration, mod_dbd tager sig af din databaseforbindelse. Når du har gjort dette (sørg for, at din Apache kører med disse moduler aktive), så kan du gå videre med at konfigurere dem.

Tilføj noget som dette til din apache-konfiguration for at konfigurere databaseforbindelsen:

<IfModule mod_dbd.c>
  DBDriver mysql
  DBDParams "host=(your_db_server, p.e. 127.0.0.1) dbname=your_db_name user=your_db_user pass=your_db_pass"
  DBDMin 1
  DBDKeep 8
  DBDMax 20
  DBDExptime 200
</IfModule> 

Tilføj nu din ønskede godkendelseskonfiguration til apache-konfigurationen:

<Directory "/your/svn/repository/path/">
  Options FollowSymLinks Indexes MultiViews
  AuthType Basic
  AuthName "Allowed users Only"
  AuthBasicProvider dbd
  AuthDBDUserPWQuery "SELECT pwd FROM tbl_users, tbl_user_group WHERE tbl_users.user_id=%s AND tbl_user.user_id=tbl_user_group.user_id"
  Require valid-user
  AllowOverride None
  Order allow,deny
  Allow from all
</Directory>

Jeg har forenklet SELECT-sætningen for bedre læsbarhed, du skal udvide denne for at få din konfiguration forfinet.

EDIT:

Efter at have skrevet har jeg fundet et meget godt eksempel på nettet, måske læs det her , også. Det går meget dybere end mit forenklede svar.




  1. Opret forbindelse til en heroku-database med pgadmin

  2. Hierarkiske forespørgsler i MySQL

  3. NOT IN i postgresql virker ikke

  4. Kan ikke trække offset-naive og offset-bevidste datotider