Para determinar si el visitante es un invitado , usamos algo como esto:
if ($user->guest) {
echo 'Hello, guest!';
}
Ahora, si quiero determinar si el visitante es un Superusuario (Administrador) registrado o no, ¿cuál sería el código para eso?
Tengo algunos archivos PHP externos a los que no quiero que nadie pueda acceder, excepto los Superusuarios de mi sitio web de Joomla. Solo trato de asegurar los archivos importando Joomla CMS.
joomla-3.x
php
security
saibbyweb
fuente
fuente
Respuestas:
estos códigos determinarán si el usuario conectado actualmente es súper usuario o no:
ese código verificará lo que está asignado al permiso "Superusuario" en la configuración global y no solo en el nivel de componente. Compruébelo usted mismo en comparación con otras formas.
fuente
core.admin
es un mejor permiso para verificar quecore.edit
.libraries/joomla/user/user.php
archivo. Es este:$iAmSuperAdmin = $my->authorise('core.admin');
Para determinar el estado de "Superusuario" debe verificar
$user->isRoot
. Esta propiedad se establece después de que se realiza la primera verificación de autorización y se detecta que el usuario es súper administrador.Sin embargo, por lo general, es mejor que desee verificar si el usuario tiene ciertos permisos, como se describe en las otras respuestas.
fuente
Prueba esto,
Esto devolverá una matriz. Por defecto, los usuarios de Joomla Admin Super admin (Grupos 8) y Administrador (Grupo 7).
Puede verificar que la matriz tenga alguno de estos valores, entonces debe ser Usuario administrador. Si ha creado un grupo de Usuarios personalizados, también debe verificarlo
#__usergroups
parent Id
.Espero eso ayude..
fuente
Puede usar una condición para rechazar a cualquier persona que no esté en un grupo específico.
fuente
if(in_array(8, $user->groups))
y funcionó para míPruebe el siguiente código para verificar si el usuario de inicio de sesión es súper administrador u otros usuarios ...
fuente
$user->get('isRoot');
no funciona para J3.6.2.Joomla @since 3.2, campo UserGroupList usa esto para verificar:
fuente