Controles de acceso, quien no puede entrar y a donde enviarlo

Este artículo es un prontuario para que tengas a mano todas las funciones típicas para que los usuarios puedan acceder a no


if( !OW::getUser()->isAuthenticated() ){ throw new AuthenticateException(); }

Esta, si el usuario no ha hecho login, salta a la página de login.


$isSuperAdmin = BOL_AuthorizationService::getInstance()->isSuperModerator( OW::getUser()->getId() );

true si es el administrador general, usualmente es usedId = 1 pero puede ser que no, así que usa esto por seguridad


$isAdmin = OW::getUser()->isAdmin();

true si el usuario es administrador


$isModerator = BOL_AuthorizationService::getInstance()->isModerator();

true si el usuario es moderador


$isPluginModerator = OW::getUser()->isAuthorized('pluginkey');

true si el usuario es moderador del plugin 'pluginkey'


Y a donde los envías?


throw new AuthenticateException()

A la página de login.


throw new Redirect404Exception();

A la página de no tienes permiso para hacer ésto.


if( !OW::getUser()->isAuthorized('pluginkey', 'add') ){

    $status = BOL_AuthorizationService::getInstance()->getActionStatus('pluginkey', 'add');

    throw new AuthorizationException($status['msg']);

}

A la página de no tienes permiso para hacer ésto pero mas elegante, con un mensaje personalizado, normalmente recogido de "User Roles", puede ser 'add', 'view', 'edit' o lo que hayas inventado


Comments:

No comments
You need to sign in to comment

Rate

Your rate:
Total: (0 rates)

Next article

ZipStoreSlideShow

"Contact us" page with the ability to choose depar...
Real-time and email notifications about site activ...
This is the complete package of OxWall 1.87You nee...
This is the complete package of OxWall 1.87You nee...
User blogs with archives, tags, comments and rates...
If on your website you need to maintain a virtual ...
Displays guests visited user profile This plugi...
Friending functionality to be used across multiple...
This version is the last one that OxWall published...
Update installation instructions: Download Oxwall...
Allow users to send private and public virtual gif...
Simple banner ad management.Use the Geolocation IP...