Configurarea permisiunilor de acces
Prezentare generală a opțiunilor de configurare pentru Nette Security.
Dacă nu utilizați întregul framework, ci doar această bibliotecă, citiți cum se încarcă configurația.
În configurație se poate defini o listă de utilizatori și astfel se poate crea un autentificator simplu
(Nette\Security\SimpleAuthenticator
). Deoarece în configurație parolele sunt specificate în formă lizibilă,
această soluție este potrivită doar pentru scopuri de testare.
security:
# afișează panoul utilizatorului în Tracy Bar?
debugger: ... # (bool) implicit este true
users:
# nume: parola
frantisek: parolasecreta
# nume, parola, rol și alte date disponibile în identitate
dobrota:
password: parolasecreta
roles: [admin]
data: ...
Mai departe, se pot defini roluri și resurse și astfel se poate crea baza pentru un autorizator (Nette\Security\Permission
):
security:
roles:
guest:
registered: [guest] # registered moștenește de la guest
admin: [registered] # și de la el moștenește admin
resources:
article:
comment: [article] # resursa moștenește de la article
poll:
Stocare
Se poate configura modul de stocare a informațiilor despre utilizatorul conectat:
security:
authentication:
# după cât timp de inactivitate va fi utilizatorul deconectat
expiration: 30 minutes # (string) implicit este nesetat
# unde se stochează informațiile despre utilizatorul conectat
storage: session # (session|cookie) implicit este session
Dacă alegeți ca stocare cookie
, puteți seta și aceste opțiuni:
security:
authentication:
# numele cookie-ului
cookieName: userId # (string) implicit este userid
# domeniile care acceptă cookie-ul
cookieDomain: 'example.com' # (string|domain)
# restricții la accesul de pe alt domeniu
cookieSamesite: None # (Strict|Lax|None) implicit este Lax
Servicii DI
Aceste servicii sunt adăugate în containerul DI:
Nume | Tip | Descriere |
---|---|---|
security.authenticator |
Nette\Security\Authenticator | autentificator |
security.authorizator |
Nette\Security\Authorizator | autorizator |
security.passwords |
Nette\Security\Passwords | hashing-ul parolelor |
security.user |
Nette\Security\User | utilizatorul curent |
security.userStorage |
Nette\Security\UserStorage | stocare |