제 웹사이트(MediaWiki 기반 위키)는 사용자 이름과 비밀번호만 사용하며(이메일은 등록 시 선택 사항입니다). Discourse는 이미 설치되어 관리자 설정에서 SSO가 활성화되어 있습니다. Discourse에서 로그인 버튼을 클릭하면 nonce가 포함된 제 사이트 로그인 페이지로 리디렉션됩니다.
공식 Discourse SSO 사용 설명서 를 참고하고 있는데, 다음과 같이 나와 있습니다:
Discourse는 외부 사용자를 Discourse 사용자로 매핑하기 위해 이메일을 사용하며, 외부 이메일은 안전하다고 가정합니다. Discourse로 전송하기 전에 이메일 주소를 검증하지 않으면 사이트가 매우 취약해집니다!
SSO에 대해 몇 가지 질문이 있습니다:
확인차 질문드립니다 - SSO가 정상 작동하게 되면, 제 사이트에 등록된 모든 사용자가 Discourse에 별도로 가입하지 않고도 ‘로그인된’ 상태로 Discourse에 접근할 수 있는 것이 맞나요?
제 웹사이트에서는 이메일을 필수로 요구하지 않기 때문에, Discourse의 모든 이메일 관련 기능을 비활성화하고 싶습니다. 즉, Discourse에서 보내는 이메일도, Discourse로 보내는 이메일(답장 등)도 모두 원치 않습니다.
제 웹사이트 SSO 코드에서 각 사용자를 위해 더미 이메일(예: unique_id@domain.xyz )을 생성하여 페이로드에 포함해서 전송하면 괜찮을까요?
제 경우처럼 SSO를 작동시키기 위해 어떻게 해야 하나요 - 다른 제안이나 팁이 있을까요?
감사합니다!
아니요. Discourse가 가장 기본적인 수준에서 기능하려면 유효한 이메일이 필요합니다. 이메일 지원이 필요하지 않다면 다른 무료 오픈소스 소프트웨어를 선택하는 것이 좋습니다.
답변해 주셔서 감사합니다. Jeff.
이 스레드(이메일을 검증하지 않을 경우의 결과) 와 거기서 남기신 코멘트를 보고 있는데, 제 상황은 꽤 유사하다고 생각합니다:
SSO를 작동하도록 설정했고, Discourse의 로컬 가입/로그인을 비활성화했습니다. 따라서 포럼에서 '로그인’을 클릭하면 제 사이트의 로그인 페이지로 리다이렉트되고, 인증이 완료되면 포럼으로 다시 리다이렉트됩니다(페이로드에는 더미이지만 고유한 이메일 ID가 포함됨).
또한 Discourse 관리자 설정에서 모든 이메일을 비활성화했습니다(따라서 Discourse는 어떤 이메일도 보내지 않음).
require_activation을 true로 설정하지 않았습니다.
Discourse에서 모든 이메일이 비활성화되어 있고 SSO를 사용 중인 경우, 더미 이메일이 여전히 문제가 될 수 있을까요? 그리고 왜 유효한 이메일이 필수적인지, 고유한 더미 이메일을 사용하면 어떤 문제가 발생하는지 설명해 주실 수 있을까요?
감사합니다!
SSO가 제대로 작동한다면 괜찮을 수도 있겠네요… 이메일 전송 시도를 막으려면 이 가짜 이메일 주소를 특정 도메인 주소로 지정해야 할 것 같은데, 자세한 내용은 기억이 안 나네요. @gerhard , 기억하시나요?
gerhard
(Gerhard Schlager)
4월 28, 2020, 8:01오후
5
disable_emails 사이트 설정을 적절하게 구성하는 것만으로도 충분할 것이지만 , 나중에 발신 이메일을 활성화할 경우를 대비하여 .invalid 도메인 확장자를 사용하는 것이 좋습니다. 예를 들어 unique_id@something.invalid처럼 사용하세요.