environnement complet autonome, révision complete de la méthode, ajout de configuration
Some checks failed
Cadoles/hydra-sql/pipeline/head There was a failure building this commit
Cadoles/hydra-sql/pipeline/pr-develop There was a failure building this commit

This commit is contained in:
2022-12-09 17:31:07 +01:00
parent b451566452
commit 6fc004a549
110 changed files with 1829 additions and 372 deletions

View File

@ -0,0 +1,2 @@
framework:
lock: '%env(LOCK_DSN)%'

View File

@ -5,15 +5,30 @@ security:
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto'
# https://symfony.com/doc/current/security.html#loading-the-user-the-user-provider
providers:
users_in_memory: { memory: null }
pdo_user_provider:
id: App\Security\PdoUserProvider
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
lazy: true
provider: users_in_memory
# lazy: true
stateless: false
provider: pdo_user_provider
custom_authenticators:
- App\Security\PdoUserAuthenticator
entry_point: form_login
form_login:
login_path: app_login
check_path: app_login
username_parameter: login
password_parameter: password
enable_csrf: true
login_throttling:
max_attempts: 3
logout: true
# activate different ways to authenticate
# https://symfony.com/doc/current/security.html#the-firewall
@ -23,8 +38,9 @@ security:
# Easy way to control access for large sections of your site
# Note: Only the *first* access control that matches will be used
access_control:
# - { path: ^/admin, roles: ROLE_ADMIN }
# - { path: ^/profile, roles: ROLE_USER }
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/connect, roles: ROLE_USER }
# - { path: ^/connect, roles: [IS_AUTHENTICATED_FULLY, ROLE_USER] }
when@test:
security:

View File

@ -0,0 +1,8 @@
pdo:
column_login_name: email
column_password_name: password
table_name: usager
data_to_fetch:
- email
- lastname
- firstname

View File

@ -6,19 +6,24 @@
parameters:
fetchDatas: "lastname, firstname, email, random"
# Paramètres de connexion base de données: "nome du serveur", "nom utilisateur", "mot de passe", "nom de la bdd", "port"
urlDatabase: "%env(resolve:urlDatabase)%"
dbUser: "%env(resolve:dbUser)%"
dbPassword: "%env(resolve:dbPassword)%"
queryHashPassword: "%env(resolve:queryHashPassword)%"
queryFetchDatas: "%env(resolve:queryFetchDatas)%"
hashMethod:
database.dsn: "%env(resolve:dsn)%"
database.user: "%env(resolve:db_user)%"
database.password: "%env(resolve:db_password)%"
# algorythme de hahshage utilisé "md5", "sha256", "haval160,4", etc.
hashAlgo: "sha256"
passwordColumnName: "password"
userTableName: "USER"
emailColumnName: "email"
urlLogoutSuccess: "http://portal.mse.local:8000/logout-success"
urlIssuer:
- "http://portal.mse.local:8000/"
- "http://localhost:8000/"
hydra_admin_base_url: '%env(HYDRA_ADMIN_BASE_URL)%'
logout_redirect_url_pattern: '%env(LOGOUT_REDIRECT_URL_PATTERN)%'
base_url: '%env(BASE_URL)%'
env(BASE_URL): 'http://localhost:8080'
url_login_challenge: '%env(resolve:url_login_challenge)%'
url_login_challenge_reject: '%env(resolve:url_login_challenge_reject)%'
url_login_challenge_accept: '%env(resolve:url_login_challenge_accept)%'
@ -39,6 +44,20 @@ services:
- '../src/DependencyInjection/'
- '../src/Entity/'
- '../src/Kernel.php'
App\Security\PdoUserAuthenticator:
arguments:
$baseUrl: '%base_url%'
App\Pdo\PdoRequest:
arguments:
$config: []
$dsn: "%database.dsn%"
$user: "%database.user%"
$password: "%database.password%"
App\Hydra\Client:
arguments:
$client: '@http_client'
$hydraAdminBaseUrl: '%hydra_admin_base_url%'
# add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones