안녕하세요
OIDC 플러그인을 사용하여 Discourse 인스턴스를 SAP CDC라는 아이덴티티 제공자와 연결했습니다.
이 설정은 SAP CDC 계정으로 로그인하고 Discourse에 가입할 수 있다는 점에서 정상적으로 작동하고 있습니다.
SAP CDC의 일부 사용자만 Discourse에 접근할 수 있도록 제한하고 싶습니다. 이 사용자들은 JWT를 통해 정의된 역할(role)로 구분됩니다. 특정 역할을 가진 사용자를 제외하고는 사용자가 거부되도록 Discourse를 구성하는 방법에 대해 도움을 주실 수 있을까요?
플러그인 없이 그걸 할 수 있는지는 잘 모르겠습니다 (아마도 제가 모르는 것일 수도 있겠죠). 자체 호스팅을 하고 있고 커스텀 플러그인을 추가하는 데 부담이 없다면, 원하지 않는 사용자를 거부하는 작업은 (이런 플러그인을 정기적으로 작성하는 사람이라면) 몇 시간 정도면 될 겁니다.
한 가지 해결책은 로그인 자체는 허용하되, 해당 역할로 정의된 그룹만 접근할 수 있는 카테고리로 모든 내용을 분류하는 것입니다. Discourse에서 이러한 역할이 그룹을 정의하도록 설정하는 방법에 대한 정보를 찾는 것은 비교적 쉬울 겁니다 (다만 제가 직접 해본 적은 없습니다).