저는 현재 제 사이트에서 SSO와 Discourse API를 만족스럽게 사용하고 있습니다. 이제 이를 훨씬 더 확장하여, 기존에 존재하는 모든 그룹(GROUP)이 제 Discourse 포럼 내에 비공개 서브포럼을 가질 수 있도록 하려고 합니다. (관련 howto를 방금 작성했습니다. 관련 API 대부분이 문서화가 잘 되어 있지 않아서요.) 하지만 여기서 문제가 발생합니다. 아직까지 포럼에 로그인한 적이 없는 사용자가 많고, 로그인은 SSO를 통해서만 가능하기 때문에, 일부 그룹 멤버에게는 포럼 이름이 없을 가능성이 큽니다. 그럼에도 불구하고 이들을 특정 포럼 그룹에 할당할 수 있도록 사용자 계정을 미리 생성하고 싶습니다. 어떻게 해야 할까요? 즉, Discourse 사용자 생성 API는 있지만, 마크(Mark)라는 사용자를 위해 계정을 생성했을 때, 마크가 나중에 포럼에 로그인하면 SSO가 제가 만든 그 계정으로 로그인하도록 보장하는 방법은 무엇일까요? 새 계정이 생성되지 않고요. 감사합니다!
SSO 사용자는 external_id로 매칭되며, 해당 값이 없거나 일치하지 않는 경우 이메일 주소로 매칭됩니다.
따라서 이 중 하나(가능하면 external_id)가 일치하도록 확인해 주시면 됩니다.
결국 POST /users 경로는 불가능했고, Sync DiscourseConnect user data with the sync_sso route 이 훨씬 복잡한 방법을 사용해야 했는데, 그럴 이유는 전혀 없었습니다. 어쨌든 완료했습니다.