stable v.2.8.10에서 초대 수락(Accept Invitation) 버튼이 작동하지 않습니다. SSO를 통해 로그인하려고 하면 초대 페이지로 다시 리디렉션되며, 초대 수락 버튼을 눌러도 아무 반응이 없습니다. 콘솔에도 에러가 표시되지 않습니다. 도움을 주실 수 있나요?
답변 주셔서 감사합니다! 구체적으로 어떤 정보가 필요하신가요? 저희는 discourse-saml 플러그인과 Okta(SSO)를 사용하여 stable 브랜치(v2.8.10)에서 자체 호스팅으로 운영하고 있습니다. 2.8.10 업데이트 이전에는 그룹 초대 링크를 생성하면 정상적으로 작동했으며, 사용자가 SSO로 로그인한 후 초대 설정에 지정된 토픽으로 리디렉션되었습니다.
stable 버전 2.8.11에서는 문제가 해결되지 않았습니다. 대신 '초대 수락’을 클릭하면 이제 콘솔 로그에 오류가 출력됩니다: PUT https://<DOMAIN>/invites/show/<INVITE_CODE>.json 404
.json URL로 이동하면 다음과 같은 내용이 표시됩니다:
// https://<DOMAIN>/invites/show/<INVITE_CODE>.json
{
"errors": [
"요청한 URL 또는 리소스를 찾을 수 없습니다."
],
"error_type": "not_found"
}
안녕하세요 @hyphalos. 오늘 이 문제를 살펴보기 시작했습니다. 저희 SAML 설정에 익숙하지 않아서 조금만 기다려 주세요.
이 부분은 다소 이상합니다. “초대 수락” 버튼은 로그인한 사용자만 볼 수 있어야 합니다. 특정 초대에 대해 로그인 상태와 로그아웃 상태의 사용자가 각각 무엇을 확인하는지 스크린샷을 올려 주실 수 있을까요? 그리고 여기에서 초대에 대해 어떤 옵션을 선택하고 계신지도 알려 주세요:
v2.8.11로 업데이트한 후 추가 테스트를 해본 결과, 초대 설정과 관계없이 사람들이 초대를 한 번만 수락할 수 있는 것을 확인했습니다. ‘토픽에 도착’ 설정을 켜고 끄는 경우, ‘그룹에 추가’ 설정을 켜고 끄는 경우 등 다양한 조합으로 테스트해 보았지만, 어떤 경우에도 초대를 한 번만 수락할 수 있었습니다. 이것이 의도된 동작인가요?
게스트가 가입한 후 같은 초대 URL을 다시 사용한다면, 초대 페이지에 갇히게 됩니다(토픽에 도착 설정이 있어도 리디렉션되지 않음). 이때 초대 수락 버튼을 클릭하면 다음과 같은 오류가 발생합니다:
수정: 만약 이것이 의도된 동작이라면, "이미 이 초대를 수락한 적이 있습니다"와 같은 오류 메시지가 표시되거나, 초대에 설정된 ‘토픽에 도착’ 위치로 리디렉션되는 기능이 있어야 할 것 같습니다.
다만, 이미 로그인된 상태에서는 “Okta SSO” 버튼이 표시되지 않을 것으로 예상했습니다. 버튼을 클릭하면 SSO로 루프가 도는 것처럼 동작하다가 다시 초대 페이지로 돌아옵니다. 사용자가 이미 로그인된 상태라면 혼란을 피하기 위해 로그인 버튼을 숨기는 것이 좋지 않을까요?