há algum tempo, numa aplicação simples, por exigência do cliente, a autênticação do usuário foi configurada para ser feita pelo servidor de aplicação WebSphere.
mas hoje preciso das permissões dele, e me foi disponibilizada uma API (proprietária) que faz a validação do usuário (por nome de usuário e senha) e retorna essas permissões.
alguém sabe como faço para pegar a senha do usuário neste filtro?
ah! não tenho acesso a sites de busca para fazer uma pesquisa. maldita whitelist!
o nome de usuário (login) até consigo pegar o com o camando ((HttpServletRequest) request).getRemoteUser();.
o problema é que não tenho acesso ao banco de dados. o acesso é feito pela API que que deram. esta API acessa um programa mainframe. nem sei se estas informações estam num banco de dados relacional.
Pelo que imagino (mas não testei), dá para você pegar o http request, pegar o valor do cabeçalho “Authorization:” e ver se ele começa por “Basic”. Se começar, o valor em Base64 contém o usuário e senha em base-64.
No exemplo mostrado nessa página da Wikipedia (o valor em base-64 é “QWxhZGRpbjpvcGVuIHNlc2FtZQ==”), o resultado esperado é “Aladdin:open sesame”, ou seja, o usuário é “Aladdin” e a senha “open sesame”.
Pelo que imagino (mas não testei), dá para você pegar o http request, pegar o valor do cabeçalho “Authorization:” e ver se ele começa por “Basic”. Se começar, o valor em Base64 contém o usuário e senha em base-64.
No exemplo mostrado nessa página da Wikipedia (o valor em base-64 é “QWxhZGRpbjpvcGVuIHNlc2FtZQ==”), o resultado esperado é “Aladdin:open sesame”, ou seja, o usuário é “Aladdin” e a senha “open sesame”.
[/quote]
legal!
achei uns exemplos aqui, mas ainda não tive tempo para testar.
ainda não testei porque consegui contornar o problema.