Facebook Login Error: CSRF detected

Preciso melhorar minha resposta.

Depois de brincar com a autenticação do FB e do Google, fiquei no login do Office365 por causa da política da empresa.

Quando movi meu servidor discourse para trás de um proxy (veja a imagem abaixo), a autenticação do O365 ficou indisponível. Ele precisa que o force https esteja ativado e essa opção está quebrada atrás do proxy. Resolvido, graças a Daniel: Moved site behind proxy, favicon and header not using https anymore - #11 by rossierd.

A linha na configuração interna do Nginx

proxy_set_header X-Forwarded-Proto $scheme;

deve ser substituída por

proxy_set_header X-Forwarded-Proto "https";

O Nginx externo não precisa de tal modificação. Ele tem:

proxy_set_header X-Forwarded-Proto $scheme;

Provavelmente o mesmo vale para FB, Google e outros tipos de autenticação.

P.S.

Obviamente essa string continha um erro de digitação $ e foi inútil.

1 curtida