Edición de «Ejemplo de ACL con Spirit Beta2»
De KumbiaPHP Framework Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.
Revisión actual | Tu texto | ||
Línea 1: | Línea 1: | ||
{{cleanupbox | {{cleanupbox | ||
|image=[[Archivo:Information_icon4.png|45px]] | |image=[[Archivo:Information_icon4.png|45px]] | ||
− | |texto ='''Este Artículo cumple con todos los | + | |texto ='''Este Artículo cumple con todos los quererimientos de los Kumbieros.'''<br /> |
}} | }} | ||
Línea 26: | Línea 26: | ||
− | Se procede a modificar el archivo | + | Se procede a modificar el archivo application_controller.php de la siguiente forma: |
<source lang="php" line> | <source lang="php" line> | ||
− | class | + | class ApplicationController extends Controller { |
public $acl; //variable objeto ACL | public $acl; //variable objeto ACL | ||
Línea 62: | Línea 62: | ||
El método initialize verifica si el usuario está autenticado y le asigna el rol a la variable, posteriormente crea el objeto ACL y procede a agregar los roles que maneja la aplicación; Para este ejemplo solo existen 2 roles, un string vacío indica que es un visitante que no se ha autenticado y la letra U indica que es un Usuario ya autenticado. Luego se agregan los recursos al objeto ACL indicándole cuales son las acciones disponibles para dichos recursos, en este ejemplo los recursos son los mismos controladores y las respectivas acciones de los controladores. | El método initialize verifica si el usuario está autenticado y le asigna el rol a la variable, posteriormente crea el objeto ACL y procede a agregar los roles que maneja la aplicación; Para este ejemplo solo existen 2 roles, un string vacío indica que es un visitante que no se ha autenticado y la letra U indica que es un Usuario ya autenticado. Luego se agregan los recursos al objeto ACL indicándole cuales son las acciones disponibles para dichos recursos, en este ejemplo los recursos son los mismos controladores y las respectivas acciones de los controladores. | ||
+ | |||
+ | |||
+ | |||
== Comprobación de Permisos == | == Comprobación de Permisos == | ||
Línea 87: | Línea 90: | ||
<source lang="php" line> | <source lang="php" line> | ||
− | class TestController extends | + | class TestController extends ApplicationController{ |
public function index(){ | public function index(){ | ||
Flash::info("Estamos en la acción {$this->action_name}"); | Flash::info("Estamos en la acción {$this->action_name}"); | ||
} | } | ||
− | + | public function before_filter(){ | |
// Verificando si el rol del usuario actual tiene permisos para la acción a ejecutar | // Verificando si el rol del usuario actual tiene permisos para la acción a ejecutar | ||
if(!$this->acl->is_allowed($this->userRol, $this->controller_name, $this->action_name)){ | if(!$this->acl->is_allowed($this->userRol, $this->controller_name, $this->action_name)){ | ||
Línea 109: | Línea 112: | ||
Esta linea verifica si el rol ($this->userRol) se tiene permitido el acceso en el controlador actual ($this->controller_name) y la acción actual que quiere ver el usuario ($this->action_name), si el usuario no tiene el permiso pertinente muestra un mensaje de error con Flash::error y se hace un return para que no cargue la vista de la acción requerida. | Esta linea verifica si el rol ($this->userRol) se tiene permitido el acceso en el controlador actual ($this->controller_name) y la acción actual que quiere ver el usuario ($this->action_name), si el usuario no tiene el permiso pertinente muestra un mensaje de error con Flash::error y se hace un return para que no cargue la vista de la acción requerida. | ||
+ | |||
== Usando ACL en la Beta1 spirit == | == Usando ACL en la Beta1 spirit == | ||
Línea 140: | Línea 144: | ||
Estas lineas validan que el rol tenga acceso al resource en el ACL. | Estas lineas validan que el rol tenga acceso al resource en el ACL. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Categoría:Tutoriales KumbiaPHP]] | [[Categoría:Tutoriales KumbiaPHP]] |