// neste método nós verificamos as permissões do usuário logado. // vemos aqui se ele tem as mesmas que a declarada no atributo. private bool TemAsPermissoesRequeridas(UsuarioLogado usuarioLogado) { // caso esta action precise de roles específicas, vamos pegar elas. string[] permissoesRequeridas = String.IsNullOrWhiteSpace(this.Roles) ? new string[0] : this.Roles.Split(';'); foreach (string permissao in permissoesRequeridas) { if (!usuarioLogado.Permissoes.Contains(permissao)) { return false; } } return true; }
public static void CriarSessaoDeUsuario(Usuario usuarioAutenticado) { var usuarioLogado = new UsuarioLogado(usuarioAutenticado); FormsAuthentication.SetAuthCookie(usuarioLogado.Email, true); HttpContext.Current.Session[USUARIO_LOGADO] = usuarioLogado; }