Nette Documentation Preview

syntax
Konfiguriranje nadzora dostopa
******************************

.[perex]
Pregled možnosti konfiguracije za Nette Security.

Če ne uporabljate celotnega ogrodja, temveč samo to knjižnico, preberite, [kako naložiti konfiguracijo |bootstrap:].

V konfiguraciji lahko določite seznam uporabnikov in tako ustvarite [preprost avtentikacijski program |authentication] (`Nette\Security\SimpleAuthenticator`). Ker so gesla v konfiguraciji berljiva, je ta rešitev namenjena le za testne namene.

```neon
security:
	# prikazuje uporabniško ploščo v Tracy Baru?
	debugger: ...  # (bool) privzeto true

	users:
		# ime: password
		johndoe: secret123

		# ime, geslo, vloga in drugi podatki, ki so na voljo v identiteti
		janedoe:
			password: secret123
			roles: [admin]
			data: ...
```

Opredelite lahko tudi vloge in vire ter tako ustvarite osnovo za [avtorizator |authorization] (`Nette\Security\Permission`):

```neon
security:
	roles:
		guest:
		registered: [guest]  # registered podeduje od guest
		admin: [registered]  # in admin podeduje od registered

	resources:
		article:
		comment: [article]   # resource podeduje od article
		poll:
```


Shranjevanje uporabnikov .[#toc-user-storage]
---------------------------------------------

Nastavite lahko način shranjevanja informacij o prijavljenem uporabniku:

```neon
security:
	authentication:
		# po kolikšnem času neaktivnosti bo uporabnik odjavljen.
		expiration: 30 minutes        # (niz) privzeto ni nastavljeno

		# kam shraniti informacije o prijavljenem uporabniku
		storage: session              # (session|cookie) privzeto je session
```

Če kot skladišče izberete `cookie`, lahko nastavite tudi naslednje možnosti:

```neon
security:
	authentication:
		# ime piškotka
		cookieName: userId            # (string) výchozí je userid

		# kateri gostitelji lahko prejmejo piškotek
		cookieDomain: 'example.com'   # (niz|domena)

		# omejitve pri dostopu do zahteve z navzkrižnim izvorom
		cookieSamesite: None          # (Strict|Lax|None) privzeta vrednost je Lax
```


Storitve DI .[#toc-di-services]
-------------------------------

Te storitve so dodane vsebniku DI:

| Ime | Vrsta | Opis
|----------------------------------------------------------
| `security.authenticator` | [api:Nette\Security\Authenticator] | [authenticator |authentication]
| `security.authorizator` | [api:Nette\Security\Authorizator] | [authorizer |authorization]
| `security.passwords` | [api:Nette\Security\Passwords] | [geslo hashing |passwords]
| `security.user` | [api:Nette\Security\User] | trenutni uporabnik
| `security.userStorage` | [api:Nette\Security\UserStorage] | [shranjevanje |#User Storage]

Konfiguriranje nadzora dostopa

Pregled možnosti konfiguracije za Nette Security.

Če ne uporabljate celotnega ogrodja, temveč samo to knjižnico, preberite, kako naložiti konfiguracijo.

V konfiguraciji lahko določite seznam uporabnikov in tako ustvarite preprost avtentikacijski program (Nette\Security\SimpleAuthenticator). Ker so gesla v konfiguraciji berljiva, je ta rešitev namenjena le za testne namene.

security:
	# prikazuje uporabniško ploščo v Tracy Baru?
	debugger: ...  # (bool) privzeto true

	users:
		# ime: password
		johndoe: secret123

		# ime, geslo, vloga in drugi podatki, ki so na voljo v identiteti
		janedoe:
			password: secret123
			roles: [admin]
			data: ...

Opredelite lahko tudi vloge in vire ter tako ustvarite osnovo za avtorizator (Nette\Security\Permission):

security:
	roles:
		guest:
		registered: [guest]  # registered podeduje od guest
		admin: [registered]  # in admin podeduje od registered

	resources:
		article:
		comment: [article]   # resource podeduje od article
		poll:

Shranjevanje uporabnikov

Nastavite lahko način shranjevanja informacij o prijavljenem uporabniku:

security:
	authentication:
		# po kolikšnem času neaktivnosti bo uporabnik odjavljen.
		expiration: 30 minutes        # (niz) privzeto ni nastavljeno

		# kam shraniti informacije o prijavljenem uporabniku
		storage: session              # (session|cookie) privzeto je session

Če kot skladišče izberete cookie, lahko nastavite tudi naslednje možnosti:

security:
	authentication:
		# ime piškotka
		cookieName: userId            # (string) výchozí je userid

		# kateri gostitelji lahko prejmejo piškotek
		cookieDomain: 'example.com'   # (niz|domena)

		# omejitve pri dostopu do zahteve z navzkrižnim izvorom
		cookieSamesite: None          # (Strict|Lax|None) privzeta vrednost je Lax

Storitve DI

Te storitve so dodane vsebniku DI:

Ime Vrsta Opis
security.authenticator Nette\Security\Authenticator authenticator
security.authorizator Nette\Security\Authorizator authorizer
security.passwords Nette\Security\Passwords geslo hashing
security.user Nette\Security\User trenutni uporabnik
security.userStorage Nette\Security\UserStorage shranjevanje