Proteger rutas con roles y policies
Comprar curso

60. Proteger rutas con roles y policies


2 comentarios

Inicia sesión para comentar

Comentarios:

  • Osneida Bordones

    Osneida Bordones hace 1 año

    Hola Victor

    Instalé Laravel Permission en la API, pero siempre me dice: This action is unauthorized, estoy protegiendo desde el controlador como tu indicas, he cambiado colocar can:api, también probé cambiando el guard_name, pero no me da resultado, me puedes indicar cuál es la manera correcta de llamarlo en la API, lo instalé en el cliente y funciona correctamente,

     

    gracias 

    • Hugo Andres Marrugo Polo hace 1 año

      El guard web se usa para la autenticación basada en la web tradicional mediante sesiones, mientras que el guard api se usa para la autenticación basada en tokens para APIs.

      hola, no se si ya pudiste solucionar, yo pude hacerlo cambiando el guard_name de la tablas Roles de web a api, una manera de hacerlo es ir al archivo config→auth.php y cambiar.

       'defaults' => [

              'guard' => 'api',

              'passwords' => 'users',

          ],

       

      Asi, cada guard_name sera api.

    • Hugo Andres Marrugo Polo hace 1 año

      amigo, donde encontraste esta respuesta, se ve interesante

    • Alejandro Echavarria hace 1 año

      Esa solución no te daría problemas al momento de querer usar Laravel permissions?

    • Alejandro Echavarria hace 1 año

    • Hugo Andres Marrugo Polo hace 1 año

      a mi me funcionó, pudé gestionar los permisos correctamente.

  • Alejandro Echavarria

    Alejandro Echavarria hace 1 año

    Cuando hago uso del can:create posts no me permite crear posts desde el cliente1. Hay alguna manera de usar Laravel permissions mediante API?

    • Victor Arana Flores hace 1 año

      Hola Alejandro. Así es, puedes usar Laravel Permissions :D

    • Alejandro Echavarria hace 1 año

      Tienes algún video explicando el proceso?, es mejor usar laravel permissions o los Scopes?

    • Victor Arana Flores hace 1 año

      Los scopes son los permisos que tu le das a un determinado token.

      Te pongo el ejemplo de youtube. Tu puedes darle acceso a una cuenta, y limitar que solo pueda editar, y subir videos, más no eliminar los videos. Este tipo de permisos lo puedes proteger con los scopes.

      Se podría decir que los scopes están mas asociados a una determinada cuenta, son los permisos que quieres que tenga una persona para que interactue en nombre tuyo.

      Los roles y permisos son más globales. Y se usa para limitar el acceso a secciones especificas de la aplicacion. Por ejmplo el panel administrativo.

    • Alejandro Echavarria hace 1 año

      Una pregunta entonces:

      Si tengo una API y una aplicación cliente, la API debe manejar el tema de las solicitudes de la aplicación cliente con permisos mediante el alcance de los scopes?

    • Victor Arana Flores hace 1 año

      Hola Alejandro, te vuelvo indicar, los scopes son los permisos que tu le das a un token asociado a tu cuenta.

      Siguiendo con el ejemplo de Youtube, tu le puedes dar permisos a otro usuario, para que interactue en tu nombre, y limitas las acciones y permisos que tiene ese usuario.

      Mientras si quieres proteger tu aplicacion en general, deberías hacerlo mediante roles y permisos.