Exemplo n.º 1
0
        private void LoginLocal()
        {
            //Comprobamos que el Nombre de Usuario contiene un Dominio
            var infoUser = Publicos.ComprobarDominioEnUsuario(txtUser.Text);

            infoUser.Dominio = cboDominio.Text;

            var result = false;

            //Comprobamos primero el tipo de Usuario
            if (GRPrincipal.Load(infoUser.Usuario, infoUser.Dominio))
            {
                InfoUsuario.Initialize();
                if (InfoUsuario.Instancia.Tipo)
                {
                    result = GRPrincipal.Login(infoUser.Usuario, txtPass.Text, cboDominio.Text);
                }
                else
                {
                    result = GRPrincipal.Login(infoUser.Usuario, GRCrypto.Encriptar(txtPass.Text));
                }
            }
            else
            {
                throw new InvalidOperationException("El usuario no está inscrito para este Sistema");
            }

            if (!result)
            {
                throw new SecurityException("El usuario o clave no son válidos!");
            }
        }
        /// <summary>
        /// Comprobación del Usuario
        /// </summary>
        /// <param name="username">Usuario</param>
        /// <param name="password">Contrasena</param>
        /// <returns>Booleano</returns>
        public override bool ValidateUser(string username, string password)
        {
            var result = false;

            //Comprobamos que el Nombre de Usuario contiene un Dominio
            var infoUser = Publicos.ComprobarDominioEnUsuario(username);

            //Comprobamos primero el tipo de Usuario
            if (GRPrincipal.Load(infoUser.Usuario, infoUser.Dominio))
            {
                if (InfoUsuario.Instancia.Tipo)
                {
                    result = GRPrincipal.Login(infoUser.Usuario, password, infoUser.Dominio);
                }
                else
                {
                    result = GRPrincipal.Login(infoUser.Usuario, GRCrypto.Encriptar(password));
                }
            }

            return(result);
        }