역방향 프록시 뒤에 있는 Discourse에서 FIDO2를 사용하는 방법을 알아낸 분이 계신가요? 저는 Cloudflare 터널 뒤에 있는 포럼에서 web.socketed.template.yml 템플릿을 사용하는 경우 이 문제를 겪고 있습니다.
Yubikey 2FA도, 새로운 패스키 로그인도 저에게는 작동하지 않습니다.
역방향 프록시 뒤에 있는 Discourse에서 FIDO2를 사용하는 방법을 알아낸 분이 계신가요? 저는 Cloudflare 터널 뒤에 있는 포럼에서 web.socketed.template.yml 템플릿을 사용하는 경우 이 문제를 겪고 있습니다.
Yubikey 2FA도, 새로운 패스키 로그인도 저에게는 작동하지 않습니다.
개발 환경(dev environment)에서 실행 중인가요? 이 부분을 임시로 오버라이드해야 할 수도 있습니다:
서버를 실행할 때 --forward-host 플래그를 사용하는 것도 도움이 될 가능성이 높습니다. 예: bin/ember-cli -u --forward-host.
아니요, 이거 프로덕션 설치예요.
어떤 오류 메시지가 표시되고 있나요?
실패한 요청 /auth.json의 전체 URL은 무엇인가요?
아, 아니요: /session/passkey/auth.json
네, 즉 서버가 브라우저가 요청하는 호스트네임과 일치하지 않는다고 판단하고 있다는 뜻입니다. 보안 키/패스키 생성 절차에서는 브라우저의 호스트네임이 서버의 호스트네임과 일치하는지 확인해야 합니다(키는 호스트네임별로 생성됩니다).
Rails 콘솔에 로그인하여 Discourse.current_hostname의 출력값을 확인해 볼 수 있을까요? 사이트 접근에 사용하는 URL과 일치하지 않는다면, 그것이 문제의 원인이 됩니다.
참고로, 이는 http와 https 문제일 수도 있습니다. 사이트에서 로고가 http:// 아래에 있는 URL을 찾고 있는 것으로 보입니다.
Discourse.current_hostname은 제가 사이트를 접근할 때 사용하는 URL과 일치합니다. 브라우저가 요청하는 호스트네임을 Discourse가 어떻게 인식하는지 확인할 수 있는 방법이 있을까요?
콘솔에서 Discourse.base_url의 값은 무엇인가요?
아, 실제로 http:// URL(정확한 호스트네임)로 설정되어 있네요. Discourse를 Cloudflare Tunnel에서 접근할 수 있도록 하기 위해 여기에 설명된 설정을 사용하고 있습니다:
아, 이제 알 것 같아요. Discourse에서 force https 설정을 활성화하니 문제가 해결되었는데, 왜 꺼져 있었는지는 모르겠어요. 다른 리버스 프록시를 앞에 추가하기 전에는 기본 설정에서 이 설정이 필요하지 않았을 것 같아요. 도움 주셔서 감사합니다!