RpcSetEnv - Utilizando Usuario e Senha

Bom dia. Preciso utilizar o RpcSetEnv para uma execução automática porem se não passar o usuário e senha ele efetua login com o Usuário Admin. Porem preciso passar user e senha do próprio usuário que efetuará o processo. Com a função PSWRET consegui pegar a senha do Usuário porem ela vem criptografada a passada a variável no RpcSetEnv ele não prepara o ambiente. Ai fiz o teste e coloquei no parâmetro da Senha a senha descriptografada e preparou o ambiente corretamente. Como que faço para pegar a senha do usuário descriptografada para poder passar como parâmetro no RpcSetEnv.

Exemplo não funciona

aUser := PswRet()

RpcSetType(3)

RpcSetEnv( substr(_cEmp,1,2), substr(_cEmp,3,2),aUser[1][2],aUser[1][3], "COM",,{"SC7","SA2","SB1","CT1","CTT"} )

Exemplo Funciona

aUser := PswRet()

RpcSetType(3)

RpcSetEnv( substr(_cEmp,1,2), substr(_cEmp,3,2),aUser[1][2],'123456', "COM",,{"SC7","SA2","SB1","CT1","CTT"} )

Nesse caso alterei a senha do usuário para testar.

Tive um problema parecido com o MATA094 que só aceita se o usuário aprovador estiver autenticado.
Para isso no retorno do meu WF tinha o código do aprovador, com esse código busquei o id do usuário SAK->AK_USER, e passei para variável publica __cUserId.
Assim o fonte acatou como se o próprio aprovador estivesse liberando o pedido.

Rafael,

Não existe nenhuma forma de pegar a senha do usuário, isso seria uma grave falha de segurança. O Protheus não armazena a senha do usuário, sim um hash da mesma, isso não é criptografia, criptografia é reversível.

Se você precisa da senha do usuário, deverá solicitar a mesma.