Konfigurace přístupovch 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ě
verze: 4.0 3.x 2.x