Ejemplo n.º 1
0
        public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
        {
            // Adiciona no cabeçalho a origem da requisicao
            context.OwinContext.Response.Headers.Add("Access-Control-Allow-Origin", new[] { "*" }); //Permite todos os

            String login = context.UserName;
            String senha = context.Password;

            try
            {
                bool retorno = false;

                var db              = new EstudodbEntities();
                var usuarioDados    = new UsuarioDados(db);
                var usuarioNegocios = new UsuarioNegocio(usuarioDados);

                retorno = usuarioNegocios.VerificaUsuario(login, senha);

                if (!retorno)
                {
                    return;
                }

                //Identifica o usuário
                var identidade = new ClaimsIdentity(context.Options.AuthenticationType);
                identidade.AddClaim(new Claim(ClaimTypes.Name, login));

                //Atribui Roles
                var roles = new String[] { };
                foreach (var role in roles)
                {
                    identidade.AddClaim(new Claim(ClaimTypes.Role, role));
                }

                GenericPrincipal principal = new GenericPrincipal(identidade, roles.ToArray());
                Thread.CurrentPrincipal = principal; // Configura na Thread  principal para poder recuperar no controle

                context.Validated(identidade);
            }
            catch (Exception e)
            {
                context.SetError("Falha de Autenticação", "Falha ao realizar Autenticação.\n\n" + e.Message);
            }
        }
Ejemplo n.º 2
0
 public UsuarioDados(EstudodbEntities db)
 {
     this.db = db;
 }
Ejemplo n.º 3
0
 public ProfissaoDados(EstudodbEntities db)
 {
     this.db = db;
 }
Ejemplo n.º 4
0
 public PessoaDados(EstudodbEntities db)
 {
     this.db = db;
 }