Como alterar a senha de um usuário em tempo de execução.

Este artigo explica duas formas de alterar senhas de usuários em aplicações Elipse E3: uma que altera a senha do usuário logado, e outra que altera a senha de qualquer usuário.

⚠️ Importante: Estes métodos não se aplicam a usuários vinculados ao Windows (AD), apenas a usuários criados diretamente no Domínio do Elipse E3.


🔐 Método ChangePassword()

Este método é utilizado para alterar a senha do usuário atualmente logado na aplicação. Ao ser chamado, ele abre uma caixa de diálogo onde o usuário pode inserir sua senha atual e definir uma nova senha.

📌 Sintaxe

Application.ChangePassword([PosX], [PosY])
  • PosX: Posição em pixels da caixa de diálogo em relação à margem esquerda da janela.
  • PosY: Posição em pixels da caixa de diálogo em relação à margem superior da janela.

🛠️ Exemplo de uso

Este método pode ser chamado, por exemplo, ao clicar em um botão:

Sub CommandButton1_Click()
    Application.ChangePassword()
End Sub

⚠️ Observações

  • Os parâmetros são opcionais. Caso algum destes parâmetros seja omitido, a respectiva coordenada da caixa de diálogo é centralizada na janela.
  • A caixa de diálogo é gerenciada pelo E3, garantindo segurança e padronização.

 


🧩 Método ChangeUserPassword

Este método permite alterar a senha de qualquer usuário, desde que a senha atual seja conhecida. A alteração é feita via script, sem abrir caixa de diálogo.

📌 Sintaxe

Application.ChangeUserPassword (Username, PasswordOld, PasswordNew, [OpStatus])

  • Username: Nome do usuário.
  • PasswordOld: Senha atual do usuário.
  • PasswordNew: Nova senha desejada.
  • OpStatus (opcional): Parâmetro que pode ser usado para verificar o status da operação.

🛠️ Exemplo de uso

Sub CommandButton1_Click()
    usuario = Screen.Item("spUserName").Value
    senhaAtual = Screen.Item("spUserPassword").Value
    novaSenha = Screen.Item("spUserNewPassword").Value
    Application.ChangeUserPassword usuario, senhaAtual, novaSenha
End Sub

⚠️ Observações

  • Ideal para cenários onde a senha precisa ser alterada programaticamente por usuários que não têm acesso a janela de administração de usuários.
  • Sempre que um usuário troca a senha, é realizado um logout de todas as sessões onde este usuário estava logado, exceto da sessão onde foi realizada a troca de senha.
  • A senha atual deve ser válida, caso contrário a operação falhará.
  • Valores para OpStatus podem ser vistos no Manual de Referência e Scripts do Elipse E3, no método LoginUser, na tabela Valores de retorno possíveis para o parâmetro OpStatus.

✅ Boas práticas

  • Evite armazenar senhas em texto plano.
  • Mantenha políticas de senha fortes e atualizadas.
  • Evite deixar scripts com senhas visíveis no ambiente de produção.
Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 0 / 5. Count: 0

Deixe seu Comentário

Seu endereço de e-mail não será publicado. Campos marcados com asterisco são obrigatórios *