Konfigurace přístupových oprávnění
Přehled konfiguračních voleb pro Nette Security.
Pokud nepoužívate celý framework, ale jen tuto knihovnu, přečtěte si, jak konfiguraci načíst.
V konfiguraci lze definovat seznam uživatelů, a tak vytvořit jednoduchý authenticator
(Nette\Security\SimpleAuthenticator
). Protože se v konfiguraci uvádějí hesla v čitelné podobě, je tohle
řešení vhodné pouze pro testovací účely.
security:
# zobrazit panel uživatele v Tracy Bar?
debugger: ... # (bool) výchozí je true
users:
# jméno: heslo
frantisek: tajneheslo
# jméno, heslo, role a další data dostupná v identitě
dobrota:
password: tajneheslo
roles: [admin]
data: ...
Dále lze definovat role a zdroje a vytvořit tak základ pro autorizátor
(Nette\Security\Permission
):
security:
roles:
guest:
registered: [guest] # registered dědí od guest
admin: [registered] # a od něj dědí admin
resources:
article:
comment: [article] # zdroj dědí od article
poll:
Úložiště
Lze konfigurovat, jak uchovávat informace o přihlášeném uživateli:
security:
authentication:
# po jak dlouhé době nečinnosti bude uživatel odhlášen
expiration: 30 minutes # (string) výchozí je nenastaveno
# kam ukládat informace o přihlášeném uživateli
storage: session # (session|cookie) výchozí je session
Pokud zvolíte jako úložiště cookie
, můžete nastavit ještě tyto volby:
security:
authentication:
# jméno cookie
cookieName: userId # (string) výchozí je userid
# domény, které přijímají cookie
cookieDomain: 'example.com' # (string|domain)
# omezení při přístupu z jiné domény
cookieSamesite: None # (Strict|Lax|None) výchozí je Lax
Služby DI
Tyto služby se přidávají do DI kontejneru:
Název | Typ | Popis |
---|---|---|
security.authenticator |
Nette\Security\Authenticator | autentikátor |
security.authorizator |
Nette\Security\Authorizator | autorizátor |
security.passwords |
Nette\Security\Passwords | hashování hesel |
security.user |
Nette\Security\User | aktuální uživatel |
security.userStorage |
Nette\Security\UserStorage | úložiště |