Diferencia entre revisiones de «Usuario:ManuelRomero/Laravel/autorizacion/gate»

De WikiEducator
Saltar a: navegación, buscar
(Ejemplo)
 
(2 revisiones intermedias por el mismo usuario no mostrado)
Línea 1: Línea 1:
 
{{:Usuario:ManuelRomero/micursos/Laravel/autorizacion/nav}}
 
{{:Usuario:ManuelRomero/micursos/Laravel/autorizacion/nav}}
  
  ===Principales métodos de Gate===
+
===Qué son las Gate===
;<source lang=php>
+
*Establecemos si un usuario tiene autorización para dceterminada acción.
 +
*Se escriben en
 +
<source lang=php>
 +
App\Providers\AuthServiceProvider@boot
 +
</source>
 +
*Usaremos la facade '''''Gate''''' para establecerlas
 +
*Siempre reciben como primer argumento el usuario actualmente conectado, pudiendo recibir más argumentos.
 +
===Cómo se usan ===
 +
===Ejemplo===
 +
*1.- Creo una gate
 +
 
 +
 
 +
 
 +
 
 +
===Principales métodos de Gate===
 +
<source lang=php>
 
define($ability, $callback):
 
define($ability, $callback):
 
</source>
 
</source>
 
El método define se utiliza para definir una habilidad personalizada en la puerta. Una habilidad es una acción que se verifica en las políticas. El callback asociado debe devolver true o false para indicar si un usuario tiene permiso para realizar la acción.
 
El método define se utiliza para definir una habilidad personalizada en la puerta. Una habilidad es una acción que se verifica en las políticas. El callback asociado debe devolver true o false para indicar si un usuario tiene permiso para realizar la acción.
  
;<source lang=php>
+
<source lang=php>
 
before($callback):
 
before($callback):
 
</source>
 
</source>

Última revisión de 07:10 28 ago 2023



Qué son las Gate

  • Establecemos si un usuario tiene autorización para dceterminada acción.
  • Se escriben en
App\Providers\AuthServiceProvider@boot
  • Usaremos la facade Gate para establecerlas
  • Siempre reciben como primer argumento el usuario actualmente conectado, pudiendo recibir más argumentos.

Cómo se usan

Ejemplo

  • 1.- Creo una gate



Principales métodos de Gate

define($ability, $callback):

El método define se utiliza para definir una habilidad personalizada en la puerta. Una habilidad es una acción que se verifica en las políticas. El callback asociado debe devolver true o false para indicar si un usuario tiene permiso para realizar la acción.

before($callback):

El método before permite establecer una función de callback que se ejecuta antes de cualquier verificación de habilidad en las políticas. Puede usarse para permitir el acceso a ciertas acciones antes de ejecutar las políticas.

after($callback)

El método after permite establecer una función de callback que se ejecuta después de cualquier verificación de habilidad en las políticas. Puede usarse para realizar acciones después de verificar las políticas.

allow($ability, $actions)

El método allow se utiliza para definir permisos para una habilidad específica. Puedes especificar qué roles o usuarios tienen permiso para realizar la habilidad.

denied($ability, $actions)

El método denied se utiliza para definir negaciones de permisos para una habilidad específica. Puedes especificar qué roles o usuarios no tienen permiso para realizar la habilidad.

check($ability, $arguments = [])

El método check verifica si el usuario actual tiene permiso para realizar una habilidad específica. Si no tiene permiso, se lanza una excepción AuthorizationException.

allows($ability, $arguments = [])

El método allows devuelve true si el usuario actual tiene permiso para realizar una habilidad específica. De lo contrario, devuelve false.

denies($ability, $arguments = [])

El método denies devuelve true si el usuario actual no tiene permiso para realizar una habilidad específica. De lo contrario, devuelve false.

beforeCallback($callback)

El método beforeCallback te permite establecer un callback global que se ejecuta antes de cualquier verificación de habilidad. Puede usarse para aplicar lógica global de autorización.