/// <summary> /// Returns true if User is not disallowed access to Url. /// </summary> /// <param name="Url">Url to check.</param> /// <param name="Ticket">The user ticket to check access for.</param> /// <returns>True if allowed.</returns> public bool CheckAccess(string Url, FormsAuthenticationTicket Ticket) { ArrayList UserRoles = new ArrayList(); UserRoles.AddRange(MenuData.GetUserRoles(Ticket.UserData).Split(',')); return(CheckAccess(Url, Ticket.Name, UserRoles)); }
///<summary>Constructor from encrypted ticket.</summary> public AccessInfo(string Url, string EncryptedTicket) : base() { FormsAuthenticationTicket Ticket = null; try { Ticket = (EncryptedTicket == "") ? null : FormsAuthentication.Decrypt(EncryptedTicket); } catch (Exception e) { Message = e.Message; RedirectUrl = ACL.LoginUrl + "?RedirectUrl=" + Url; } if (Ticket != null) { try { Authenticated = true; Authorized = ACL.CheckAccess(Url, Ticket); if (!Authorized) { RedirectUrl = ACL.UnauthorizedUrl; } UserID = Ticket.Name; UserRoles = MenuData.GetUserRoles(Ticket.UserData); } catch (Exception e) { Message = e.Message; } } else { RedirectUrl = ACL.LoginUrl + "?RedirectUrl=" + Url; }; }
/// <summary> /// Returns true if User is not disallowed access to Url. /// </summary> /// <param name="Url">Url to check.</param> /// <param name="User">The user to check access for.</param> /// <returns>True if allowed.</returns> public bool CheckAccess(string Url, IPrincipal User) { ArrayList UserRoles = new ArrayList(); UserRoles.AddRange(MenuData.GetUserRoles(User).Split(',')); return(CheckAccess(Url, User.Identity.Name, UserRoles)); }