[SP-pm] Autenticação compartilhada

Eden Cardim eden at insoli.de
Tue Aug 6 07:29:41 PDT 2013


>>>>> "Tiago" == Tiago Peczenyj <tiago.peczenyj em gmail.com> writes:

    Tiago> isso é feito server side. Oauth, SE NAO ME ENGANO, quando
    Tiago> vc faz

    Tiago> 1 - tenta logar no youtube

    Tiago> ele ve q vc nao tem cookie de sessao e manda pra
    Tiago> accounts.google.com e na url tem alguma indicação que vc
    Tiago> veio do youtube (um redirect_url=xxx por exemplo).

    Tiago> 2- vc loga no accounts.google.com

    Tiago> 3- google the redireciona pra url xxx do youtube e recebe
    Tiago> uma chave y

    Tiago> 4- o youtube recebendo esse redirecionamento verifica
    Tiago> server side se a chave y é valida. se sim ele inicia a
    Tiago> sessao.

    Tiago> é server side pq vc tem um par de chaves criptograficas pra
    Tiago> utilizar nesse handshake interno.

Dei uma revisada na especificação e você realmente está correto, isso
é OAuth com implicit grant e não o tipo mais comum, o authorization
code grant, vide http://tools.ietf.org/html/rfc6749#section-1.3.2

O implicit grant é viável pelo fato dos dois serviços pertencerem à
mesma organização, assim, se o token for exposto a um terceiro, ambos
os serviços podem conferir a validade do mesmo via handshake no
backend, pra conferir se a pessoa que usou o token no youtube.com está
realmente autenticada no accounts.google.com e se a conta dela está
autorizada a usar esse token, antes de liberar o acesso.

O authorization code grant, que é a modalidade mais comum em apis,
etc. faz uma troca de tokens com serviços de terceiros para que o
token de acesso final não fique exposto no browser.

-- 
Eden Cardim -- Insolide Soluções de TI Ltda.
+55 11 9644 8225
http://insoli.de


More information about the SaoPaulo-pm mailing list