Buenas a todos espero se encuentren bien.
Me han escrito nuevamente desde costa rica, y un articulo que les gustaría este dentro de este blog es manejar los roles en ASP.NET.
A continuación les muestro unos ejemplos sencillos de como hacerlo.
1.- Asignar usuario a ROL.
Dentro de el puedes hacerlo de la siguiente manera :
Roles.AddUserToRole(this.txtusuario.text, "Administrador");
Para hacerlo mas completo posible, se verifica si el USUARIO no existe en el rol.
ASI:
if (!Roles.IsUserInRole(this.txtusuario.text))
{
Roles.AddUserToRole(this.txtusuario.text, "Administrador");
Response.Write("Usuario asignado al rol");
}
else
{
Response.Write("Este usuario ya se encuentra agregado a el rol especificado");
}
Hecho en VB.NET
If Not Roles.IsUserInRole(txtusuario.text,) Then
Roles.AddUserToRole(txtusuario.text, "Administrador")
Response.Write("Usuario asignado al rol")
Else
Response.Write("Este usuario ya se encuentra agregado a el rol especificado")
End If
2.- Crear Roles.
Dentro de el puedes hacerlo de la siguiente manera :
Verificas si el rol no existe, de ser cierto, entonces lo crea.
if (!Roles.RoleExists("Administrador"))
{
Roles.CreateRole("Supervisor");
}
else
{
Response.Write("El rol ya existe");
}
Hecho en VB.NET
If Not Roles.RoleExists(txtroles.Text) Then
Roles.CreateRole(txtroles.Text)
Else
Response.Write("El rol ya existe")
End If
3.- Obtener todos los Roles existentes.
Si deseas obtener una lista de todos los roles existentes en la base de taos puedes hacerlo de la siguiente manera:
He tomado para este ejemplo un GridView para mostrar la información.
string[] arrayroles = Roles.GetAllRoles();
this.GVRol.DataSource = arrayroles;
this.GVRol.DataBind();
4.- Remover Usuario desde Rol Seleccionado
Para remover el usuario desde un rol seleccionado se hace de la siguiente manera:
Roles.RemoveUserFromRole(this.txtusuario.text, "Administrador");
Si cargas los roles en un control, por ejemplo un ListBox, puedes hacerlo así:
Roles.RemoveUserFromRole(this.txtusuario.text, RolesListBox.SelectedItem.Value);
Nota: existen mas roles existentes, este articulo denota algunos.
No olviden dejar su comentario, ayudan a crecer.
Espero seas de gran ayuda esta informacion, hasta la próxima.
Saludos…
Archivado bajo: Categoria All
Hola muy buena expliacacion pero como le hago para verificar si el usuario pertence a un determinado rol para saber que es lo qeu pueda realizar dependiendo si es administrador o usuario gracias
Hola cesar espero estes bien.
Bueno puedes hacer lo siguiente:
para “SABER SI EL USUARIO EXISTE EN UN DETERMINADO ROL” hay un metodo que se llama IsUserInRole el cual recibe 2 parametros. “string username”, string rolName” con eso tu puedes verificar si el usuario existe en un determinado rol.
if (Roles.IsUserInRole(this.txtusuario, “Tu Rol”))
{
…… Colocas Tu logica ……
}
Nota: Avisame si solucionastes.
Saludos espero sea de gran ayuda mi respuesta.
Nelson Gomez…
Gracias, un gran aporte.
Excelente aporte….. corta explicación y efectivo
me sirvio el tutorial, gracias.
De que forma puedo resolver que cuando un usuario haga un logout, al dar al boton regresar no vuelva a entrar al area restringida, ya q cuando vuelve al area restringida y se refresca la pagina entonces si manda a login, como podre resolver esto.
De antemano gracias