Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Arzanardi

Login centralizado num unico servidor

Recommended Posts

Olá pessoal!

 

Gostaria de uma força de vocês para uma duvida minha.

 

Hoje eu tenho uma base de dados de usuarios/senha num servidor X.

Porem tenho aplicativos web espalhados em vários outros servidores que precisarão ser acessados depois de o usuario efeturar o login.

Gostaria de fazer um sistema unico de autenticação que valesse para os outros servidores/paginas.

Como isso seria possível?

 

Algo como os logins do Yahoo! do Google que tem um ID unico.

 

Sei que tem algumas formas de se fazer isso, porem gostaria de uma dica ou sugestao de algo mais seguro.

 

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer a verificação conectando no banco de dados externo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

existem diversas maneiras para fazer isso, vai depender da sua nescessidade/viabilidade, vou citar alguns modelos

 

o caso mais robusto seria criar uma aplicacao de autenticação no servidor onde estão os logins, assim os scripts PHP se comunicariam com esse programa por uma porta definida por você (lembrando que esse programa provavelmente não será escrito em PHP, visto que PHP não é uma linguagem voltada a criacao de servidores, apesar de nao ser impossivel =P) e faria a troca de dados de forma criptografada

 

um caso mais simples seria atravez de requisicoes http ao servidor, dessa maneira voce nao precisa de servidores externos e pode fazer sem exigir nenhuma configuracao extra, para mais informacoes sobre esse procure por "web services"

 

e temos o caso que o nosso amigo ali citou, de usar o banco de dados, lembrando que a maioria dos servidores na web nao permitem acesso externo aos bancos, então voce teria que ter um servidor que disponibilizasse isso, caso nao tenha tente o modelo acima que não requer configuracao

 

e se oque você quer é manter o usuario autenticado de forma cross-site, nesse caso você irá usar cookies com paths definidos manualmente para permitir isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Márcio e Wilker, muito obrigado pelas respostas, já abriram muito minha mente e várias opcoes surgiram.

Gostaria de comentar algumas coisas:

 

"o caso mais robusto seria criar uma aplicacao de autenticação no servidor onde estão os logins, assim os scripts PHP se comunicariam com esse programa por uma porta definida por você (lembrando que esse programa provavelmente não será escrito em PHP, visto que PHP não é uma linguagem voltada a criacao de servidores, apesar de nao ser impossivel =P) e faria a troca de dados de forma criptografada"

Tem algum exemplo pra me mostrar?

 

"um caso mais simples seria atravez de requisicoes http ao servidor, dessa maneira voce nao precisa de servidores externos e pode fazer sem exigir nenhuma configuracao extra, para mais informacoes sobre esse procure por "web services" "

Nesse caso, já vi bastante coisa sobre WebServices, porem estou esbarrando na questao de segurança. Mas me parece o mais "prático"

 

"e temos o caso que o nosso amigo ali citou, de usar o banco de dados, lembrando que a maioria dos servidores na web nao permitem acesso externo aos bancos, então voce teria que ter um servidor que disponibilizasse isso, caso nao tenha tente o modelo acima que não requer configuracao"

Pode ser uma pergunta boba, mas eu teria que ter um script de login em todas as minhas aplicações que chamam os dados desse servidor externo comum? No caso eu queria apenas uma fonte para a autenticação. Como ficaria os tatamento s de sessoes e tal?

 

"e se oque você quer é manter o usuario autenticado de forma cross-site, nesse caso você irá usar cookies com paths definidos manualmente para permitir isso"

Neste exemplo estou meio por fora, tem alguma fonte de pesquisa pra eu me interar sobre o assunto?

 

Mais uma vez obrigado!

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.