Class LoginModule

java.lang.Object
systextil.auth.LoginModule
All Implemented Interfaces:
LoginModule
Direct Known Subclasses:
RepLoginModule

public class LoginModule extends Object implements LoginModule
Módulo autenticador de usuário do Systêxtil que pode ser usado num container web, por exemplo.
Author:
sergio
  • Constructor Details

    • LoginModule

      public LoginModule()
  • Method Details

    • initialize

      public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String,?> sharedState, Map<String,?> options)
      Specified by:
      initialize in interface LoginModule
    • validate

      public static Login validate(int empresa, String usuario, String senha) throws LoginException
      Valida as credenciais do usuário no Systêxtil.

      Usar este método para obter uma conexão diretamente do serviço JNDI.

      Parameters:
      empresa - o código da empresa
      usuario - o nome do usuário
      senha - a senha do usuário, podendo ser nula ou vazia
      Returns:
      o usuário encontrado, se tiver sido autenticado com sucesso
      Throws:
      LoginException - a mensagem informando o problema ocorrido, inclusive se alguma das credenciais estava nula ou vazia.
    • validate

      public static Login validate(AppConnection conn, int empresa, String usuario, String senha) throws LoginException
      Valida as credenciais do usuário no Systêxtil.

      Usar este método em formulários NXJ, recebendo uma conexão do contexto atual.

      Parameters:
      conn - a conexão principal ao banco de dados
      empresa - o código da empresa
      usuario - o nome do usuário
      senha - a senha do usuário, podendo ser nula ou vazia
      Returns:
      o usuário encontrado, se tiver sido autenticado com sucesso
      Throws:
      LoginException - a mensagem informando o problema ocorrido, inclusive se alguma das credenciais estava nula ou vazia.
    • buildLogin

      public static Login buildLogin(Connection conn, int empresa, String usuario, String idioma) throws LoginModule.LoginFailed
      Constrói um login para que seja usado no servlet de menus.
      Parameters:
      conn - a conexão principal ao banco de dados
      empresa - o código da empresa
      usuario - o nome do usuário
      idioma - o idioma do usuário
      Returns:
      o login construído para esse usuário
      Throws:
      LoginModule.LoginFailed - se o usuário não tiver permissão para acesso ao ERP Web.
    • validateLogin

      protected Login validateLogin(String usuario, String senha) throws LoginException
      Subclasses podem sobrescrever este método para implementar validações diferentes.
      Parameters:
      usuario - o código da empresa e o nome do usuário, podendo ser nulo ou vazio; para esta classe, o código da empresa é separado do usuário por um caractere não-alfanumérico (\W).
      senha - a senha
      Returns:
      o login encontrado e validado
      Throws:
      LoginException - se a validação falhar
    • login

      public boolean login() throws LoginException
      Specified by:
      login in interface LoginModule
      Throws:
      LoginException
    • commit

      public boolean commit()
      Specified by:
      commit in interface LoginModule
    • abort

      public boolean abort()
      Specified by:
      abort in interface LoginModule
    • logout

      public boolean logout()
      Specified by:
      logout in interface LoginModule
    • validaTempoSenha

      public static void validaTempoSenha(AppConnection conn, int codigoEmpresa, String usuario)
    • prazoExpiraSenha

      public static void prazoExpiraSenha(AppConnection conn, int codigoEmpresa, String usuario) throws TagException
      Throws:
      TagException