Muito me perguntam sobre este assunto e quero compartilhar a resposta com vocês.
Existem três formas de se fazer isso:
1. Há um componente no Tivoli Access Manager chamado SPNego. Ele permite criar tokens oriundos do sistema operacional estabelecendo uma autenticação com uma aplicação Web. Sem dúvida alguma, esta é a única solução limpa para isto.
Para maiores informações sobre o SPNego clique aqui.
Para entender as outras duas alternativas é necessário entender o funcionamento do HTTP Server da Microsoft. O Internet Information Server (IIS).
O IIS faz uma chamada interna ao sistema operacional e pode receber um token de autenticação do Windows. Esta chamada não é padrão, sendo necessário configurar o recurso na console administrativa do IIS. Este token pode ser repassado para aplicações .net estabelecendo uma relação de autenticação. Neste token caminha a informação do usuário mas não tem a senha.
2. O Portal permite modificar toda a sua estrutura de autenticação. Para isto você pode criar classes que definem o comportamento de autenticação do Portal. A este recurso denominamos Custom User Registry (CUR). Este tipo de implementação requer um alto grau de conhecimento dos módulos de segurança do Portal. Neste caso você poderia ler o token do IIS usando um componente de .net e na porgramação do portal você desabilita a senha permitindo que somente requisições vindas do gateway em .net possa realizar a autenticaçao.
3. Você pode criar um gateway em Java que recebe as informações via gateway .net e autentica no portal via HTTP/HTTPS. Esta solução é a pior de todas devido a quantidade de controles de segurança que são necessários implementar para autenticar. A solução fica lenta e com alto grau de acoplamento coma tela do portal.
Novas idéias, sugestões ou mesmo experiências neste assunto são bem vindas.
3 comentários:
Alex e pessoal, na Lotusphere ficamos sabendo que o suporte a SSO utilizando SPNego será nativo no Portal 6.1 (não será mais necessário adquirir licensas de outros produtos). :)
Que ótima notícia. Vou pesquisar mais a este respeito e em breve mais informações no blog.
Bem,
queria saber se você tem uma documentação mas detalhada sobre a autenticação do portal no desktop windows, sem a utilização do SPNego.
Postar um comentário