| 요약 | SCIM 서비스 제공자 엔드포인트 추가 | |
| 저장소 링크 | https://forge.libre.sh/libre.sh/discourse-scim | |
| 설치 가이드 | Discourse에서 플러그인 설치 방법 |
기능
이 플러그인은 Discourse에 SCIM 엔드포인트를 추가합니다. SCIM은 IETF가 RFC7644와 RFC7643를 통해 제안한 표준으로, 간단한 Rest API를 통해 사용자/그룹 관리 솔루션을 제공하고자 합니다.
기존의 SSO 및 중앙 집중식 계정 생성 외에도 SCIM은 다음과 같은 장점을 가지고 있습니다:
- 사용자를 그룹에 할당;
- 여러 앱에서 사용자 정보를 즉시 변경;
- SSO에서 사용자가 제거될 때 해당 사용자를 삭제;
- 표준화된 방식으로 사용자 또는 그룹 목록을 조회;
- …
이 플러그인은 keycloak SCIM 플러그인과 authentik SCIM 제공자를 클라이언트로 사용하여 테스트했습니다. 아이디어는 keycloak 또는 authentik에서 사용자를 추가/편집하면 해당 변경 사항이 자동으로 Discourse에 반영되도록 하는 것입니다.
설정
SCIM 엔드포인트를 쿼리하려면 먼저 API 키를 생성해야 합니다. 여기에서 설명된 대로 모든 사용자를 위한 전역 API 키 또는 모든 사용자를 위한 세분화(범위 지정)된 API 키를 사용할 수 있습니다: Create and configure an API key
scim 범위를 사용하십시오. 현재는 모든 엔드포인트에 대한 액세스를 함께 허용해야 합니다.
그런 다음 curl을 사용하여 모든 사용자를 쿼리하는 예를 들면 다음과 같습니다:
$ curl -H 'Authorization: Bearer <your_api_key>' -H 'Content-Type: application/scim+json' -v http://localhost:4200/scim_v2/Users