[Cascavel-pm] HTTP_REFERER - variável de ambiente não funciona no protocolo https

Nilson Santos Figueiredo Junior acid06 em gmail.com
Sexta Maio 16 11:57:27 PDT 2008


2008/5/16  <fernandolouis em terra.com.br>:
> Alguma dica para eu pesquisar referente a webservices e token?

Um token de autorização é simplesmente um número ou uma cadeira de
caracteres ou... bem, o que você quiser que seja, desde que seja
grande o suficiente (pelo menos uns 128bits) para garantir provável
uniqueness (unicidade? existe essa palavra?).

Se você quer algo bem simples, basta definir um protocolo qualquer.
Por exemplo, um servidor autorizado, ao invés de referenciar
diretamente o seu site, faz um link para um script redirecionador
neste mesmo servidor autorizado. Este script redirecionador contacta o
seu servidor, por exemplo, faz uma requisição para:

  http://www.seu-servidor.com/auth/get_auth_token?partner=76b142499e2ac8795f6623256bfe0e42

Onde cada um dos sites parceiros terá um "partner token" diferente.

Seu servidor, após possíveis validações (por exemplo, você pode
associar um "partnet token" ao endereço IP do servidor parceiro, caso
isto faça sentido em seu caso), responde este request com um token de
autorização gerado por algum mecanismo qualquer à sua escolha, por
exemplo. ele irá responder isto:

  dd932543e3da27049c51b0f3e225b666

E salvar este token algum lugar como um token válido
(preferencialmente, expirável dentro de N minutos).

Aí então, o script redirecionador no servidor autorizado, redireciona
o cliente original para, por exemplo, utilizando o token acima:

  http://www.seu-servidor.com/auth/validate_auth_token?token=dd932543e3da27049c51b0f3e225b666

Seu servidor então irá verificar a validade do token fornecido e,
então, liberar o acesso para o usuário, caso o token seja válido.

Esta é uma das formas mais simples que eu posso pensar. A sua API de
autorização poderia ser bem mais complexa, com uma interface via
WebServices, por exemplo. Eu particularmente odeio WebServices, mas
isso é outra discussão.

-Nilson Santos F. Jr.


Mais detalhes sobre a lista de discussão Cascavel-pm