Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/04/2004, 10:46
Avatar de RootK
RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 23 años
Puntos: 50
mmm... , en mi caso para hacer la autentificacion (me imagino que tambien estás usando autentificacion por medio de forms) lo que hago es que tengo en mi BD una tabla llamada roles y dependiendo del usuario que se firme recoger dichos roles y asignarlos al GenericPrincipal.

Ejemplo.

Cita:
Dim roles() As String
roles = 'Llamo a una funcion que cosulte mi BD dependiendo del usuario que se haya firmado

Dim roleStr As String = ""
Dim role As String

'Recorro los roles y los guardo en una variable separados por ;
For Each role In roles
roleStr += role
roleStr += ";"
Next role


'Después creo un ticket de una cookie para guardar el usuario, expiracion, los roles, etc (no es cookie persistente)

Dim ticket As New FormsAuthenticationTicket (1, _
Context.User.Identity.Name, _
DateTime.Now, _
DateTime.Now.AddHours(1), _
False, _
roleStr)

'encripto para mantenter seguridad en la cookie.

Dim cookieStr As String = FormsAuthentication.Encrypt (ticket)

'Envío la cookie al cliente:

Response.Cookies("roles").Value = cookieStr
Response.Cookies("roles").Path = "/"
Response.Cookies("roles").Expires = DateTime.Now.AddMinutes(1)


Context.User = New GenericPrincipal(Context.User.Identity, roles)
Espero que con este ejemplo te des una mejor idea.
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net