2.4 KiB
Hydra-sql
Une LoginApp pour le serveur OpenID Connect Ory/Hydra. Elle permet de se connecter à une base de donnée et de vérifier un mot de passe donné sur une mire locale puis d'aller chercher des données demandées
Usage
Dans le cas d'utilsation du thème pour personaliser la page de login
Développement
Un environnement Docker Compose est proposé comme support de développement.
Afin de démarrer celui-ci:
# Démarrer l'environnement docker-compose
make up
# fermer l'environnement
make down
Variables d'environnement
DB_USER="lasql"
DB_PASSWORD="lasql"
ISSUER_URL="http://localhost:8000"
BASE_URL='http://localhost:8080'
# connexion hydra
HYDRA_ADMIN_BASE_URL='http://hydra:4445'
DSN_REMOTE_DATABASE="pgsql:host='postgres';port=5432;dbname=lasql"
APP_LOCALES="fr,en"
test connexion mariadb
Modifier la variable d'environnement avec cette valeur
DSN_REMOTE_DATABASE="mysql:host=mariadb;port=3306;dbname=lasql;"
Données de test
un base de données postgres est montée dans l'environnement pour tester la connexion:
utilisateurs disponibles au démarage: ('test1@test.com', '8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92', 'Locke', 'John'), ('test2@test.com', '8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92', 'Dubois', 'Angela'), ('test3@test.com', '8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92', 'Dupont', 'Henri'), ('test4@test.com', '8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92', 'Durand', 'Isabelle');
Mot de passe = '123456' hashé en par sha256
configuration
Permet d'adapter les requetes SQL en indiquant les noms de colonnes nécessaires.
pdo_configuration/pdo.yaml
pdo:
column_login_name: email
column_password_name: password
table_name: usager
data_to_fetch:
- email
- lastname
- firstname
Conteneurs
Nom | Description | Port(s) hôte utilisé(s) |
---|---|---|
oidc-test |
Application factice permettant de tester l'authentification OpenID Connect | 8080 |
hydra |
Serveur Ory/Hydra | 8081 |
hydra-sql |
Login/Consent/Logout App (ce projet) | 8082 |
postgres |
Base de donnée postgres support du test et pour hydra | 5432 |
mariadb |
Base de donnée mariadb support du test | 3306 |
pgadmin |
pour administrer la base de donnée | 8085 |