Configuración de permisos de acceso

Resumen de las opciones de configuración para Nette Security.

Si no utilizas todo el framework, sino solo esta librería, lee cómo cargar la configuración.

En la configuración se puede definir una lista de usuarios, y así crear un autenticador simple (Nette\Security\SimpleAuthenticator). Dado que en la configuración se indican las contraseñas en forma legible, esta solución es adecuada solo para fines de prueba.

security:
	# ¿mostrar el panel de usuario en Tracy Bar?
	debugger: ...  # (bool) predeterminado es true

	users:
		# nombre: contraseña
		frantisek: tajneheslo

		# nombre, contraseña, rol y otros datos disponibles en la identidad
		dobrota:
			password: tajneheslo
			roles: [admin]
			data: ...

Además, se pueden definir roles y recursos y crear así la base para un autorizador (Nette\Security\Permission):

security:
	roles:
		guest:
		registered: [guest]  # registered hereda de guest
		admin: [registered]  # y de él hereda admin

	resources:
		article:
		comment: [article]   # el recurso hereda de article
		poll:

Almacenamiento

Se puede configurar cómo almacenar la información sobre el usuario conectado:

security:
	authentication:
		# después de cuánto tiempo de inactividad será desconectado el usuario
		expiration: 30 minutes        # (string) predeterminado no está establecido

		# dónde almacenar la información sobre el usuario conectado
		storage: session              # (session|cookie) predeterminado es session

Si eliges cookie como almacenamiento, puedes establecer también estas opciones:

security:
	authentication:
		# nombre de la cookie
		cookieName: userId            # (string) predeterminado es userid

		# dominios que aceptan la cookie
		cookieDomain: 'example.com'   # (string|domain)

		# restricción al acceder desde otro dominio
		cookieSamesite: None          # (Strict|Lax|None) predeterminado es Lax

Servicios DI

Estos servicios se añaden al contenedor DI:

Nombre Tipo Descripción
security.authenticator Nette\Security\Authenticator autenticador
security.authorizator Nette\Security\Authorizator autorizador
security.passwords Nette\Security\Passwords hashing de contraseñas
security.user Nette\Security\User usuario actual
security.userStorage Nette\Security\UserStorage almacenamiento
versión: 4.0