SCIM을 사용한 사용자 및 그룹 프로비저닝

SCIM으로 사용자와 그룹 프로비저닝 - 메인
이 글에서는

SCIM(System for Cross-domain Identity Management) API 표준을 사용하여 Notion 워크스페이스에서 사용자와 그룹을 프로비저닝하고 관리하세요 🔑


참고: 이 기능은 엔터프라이즈 요금제 사용자만 사용할 수 있습니다.

Notion의 SCIM API를 통해 다음과 같은 작업을 할 수 있습니다.

사용자 프로비저닝과 관리:

  • 워크스페이스에서 멤버 생성, 제거

  • 멤버의 프로필 정보 업데이트

  • 워크스페이스에서 멤버 검색

  • 이메일 또는 이름으로 멤버 찾기

그룹 프로비저닝과 관리:

  • 워크스페이스에서 그룹 생성, 제거

  • 그룹에 멤버 추가, 제거

  • 워크스페이스에서 그룹 검색

  • 이름으로 그룹 찾기

참고: 현재는 Notion의 SCIM API를 사용하여 워크스페이스 게스트를 관리할 수 없습니다.

현재 Okta, OneLogin, Rippling, 그 외 사용자 지정 SCIM 애플리케이션을 지원합니다. 다른 ID 공급자를 사용하는 경우 Notion으로 문의해 주세요. 특정 앱에 대한 ID 공급자 설정을 자세히 알아보려면 여기에서 확인하세요. →

Notion에서 SCIM을 사용하기 위한 사전 요건

Notion에서 SCIM을 사용하려면:

  • 엔터프라이즈 요금제 워크스페이스여야 합니다.

  • ID 공급자(IdP)가 SAML 2.0 프로토콜을 지원해야 합니다. 특정 앱에 대한 ID 공급자 설정을 자세히 알아보려면 여기에서 확인하세요. →

  • 워크스페이스 소유자는 Notion 워크스페이스의 SCIM을 구성해야 합니다.

  • SCIM을 사용하여 사용자의 이름이나 이메일 주소를 수정하려면 해당 이메일 도메인에 대한 소유권이 확인되어야 합니다. 도메인 인증에 대해 자세히 알아보기 →

SCIM API 토큰 생성

엔터프라이즈 요금제 조직 소유자만 SCIM API 토큰을 생성하고 확인할 수 있습니다. SCIM API 토큰을 생성하는 방법:

  1. 워크페이스 전환기를 열고 조직 관리를 선택하세요. 아직 조직을 설정하지 않은 경우, 먼저 조직을 설정해야 할 수 있습니다. 여기에서 자세히 알아보세요 →

  2. 조직 수준 컨트롤의 일반 탭에서 SCIM 프로비저닝 옆에 있는 >를 선택하세요.

참고: SCIM을 통해 관리하려는 각 워크스페이스에 대해 별도의 SCIM API 토큰을 생성해야 합니다.

토큰 철회

워크스페이스 소유자가 워크스페이스를 나가거나 역할이 변경되면 해당 토큰은 철회됩니다. 이 경우, 나머지 워크스페이스 소유자들에게 철회된 토큰을 교체하라는 메시지가 자동으로 전송됩니다.

워크스페이스 소유자는 사용 중인 토큰을 철회할 수도 있습니다. 토큰을 철회하려면 각 토큰 옆에 있는 🗑를 클릭하세요.

기존 토큰 교체

토큰이 철회된 경우, 기존 API 통합의 토큰을 교체해야 합니다.

철회된 토큰에 기반한 SCIM 통합이나 사용자 프로비저닝은 새로운 토큰이 적용될 때 까지 비활성화됩니다.

참고: 기존 API 통합의 오작동을 방지하기 위해, 관리자를 디프로비저닝하기 전에 해당 관리자가 생성한 토큰을 먼저 교체하세요.

초대 이메일 표시 안 함

엔터프라이즈 요금제 조직 소유자가 SCIM을 통해 프로비저닝할 때 사용자에게 이메일로 워크스페이스와 그룹 초대를 보낼지 제어하는 방법:

  1. 워크페이스 전환기를 열고 조직 관리를 선택하세요.

  2. 사용자에게 이메일을 보내지 않으려면 일반 탭에서 SCIM 프로비저닝에서 초대 이메일 표시 안 함 토글을 켜세요.

SCIM을 통한 제한된 멤버 프로비저닝

SCIM을 통해 제한된 멤버를 프로비저닝하려면 SCIM 'role' 속성을 'restricted_member'로 설정해야 합니다.

"urn:ietf:params:scim:schemas:extension:notion:2.0:User": { role: string // "owner" | "membership_admin" | "member" | "restricted_member" }

SCIM을 통해 페이지 게스트를 제한된 멤버로 전환하려면 POST /scim/v2/Users를 사용해야 합니다.

아래 표는 SCIM 사용자 속성과 Notion 사용자 프로필 필드 간의 매핑에 대한 간략한 설명입니다. 조직 소유자는 Notion으로 보낼 속성을 선택하고 언제든지 해당 속성을 업데이트할 수 있습니다. Notion은 Notion SCIM API를 통해 전송된 속성을 처리하여 사용자 및 그룹 프로비저닝 및 관리 경험을 개선합니다.

SCIM 속성

Notion 사용자 프로필 항목

외부 네임스페이스

userName

이메일(필수 입력 항목)

urn:ietf:params:scim:schemas:core:2.0:User

name.formatted

이름(권장 입력 항목입니다. Notion에는 하나의 이름 항목만 있으므로 Okta에서 모든 이름 항목을 결합한 형태를 만들 수 있습니다.)

urn:ietf:params:scim:schemas:core:2.0:User

name.familyName

이름(name.formatted 대신 name.givenName과 함께 사용할 수 있음)

urn:ietf:params:scim:schemas:core:2.0:User

name.givenName

이름(name.formatted 대신 name.familyName과 함께 사용할 수 있음)

urn:ietf:params:scim:schemas:core:2.0:User

photos

프로필 사진

urn:ietf:params:scim:schemas:core:2.0:User

title

제목

urn:ietf:params:scim:schemas:core:2.0:User

phoneNumbers

전화번호

urn:ietf:params:scim:schemas:core:2.0:User

addresses

주소

urn:ietf:params:scim:schemas:core:2.0:User

roles

역할

urn:ietf:params:scim:schemas:core:2.0:User

locale

지역

urn:ietf:params:scim:schemas:core:2.0:User

preferredLanguage

선호 언어

urn:ietf:params:scim:schemas:core:2.0:User

userType

사용자 유형

urn:ietf:params:scim:schemas:core:2.0:User

emails

이메일

urn:ietf:params:scim:schemas:core:2.0:User

active

활성화됨

urn:ietf:params:scim:schemas:core:2.0:User

manager.value

관리자(이메일 주소여야 함)

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

manager.displayName

관리자

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

division

부문

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

department

부서

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

costCenter

비용 센터

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

organization

조직

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

employeeNumber

직원 번호

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User

role

Notion 작업 공간 역할("owner" | "membership_admin" | "member")

urn:ietf:params:scim:schemas:extension:notion:2.0:User

  • GET /Users

    • GET

    • 페이지를 매긴 워크스페이스 멤버 목록을 검색합니다.

    • startIndex 와  count 매개 변수를 사용하여 페이지를 매길 수 있습니다.  startIndex 는 1부터 시작하며 최대 개수는 100입니다.

    • 필터 매개 변수를 사용하여 결과를 필터링할 수 있습니다. 유효한 필터링 기준은 given_namefamily_name입니다. 예: GET

    • given_namefamily_name은 대소문자를 구분합니다. 이메일은 소문자로 변환됩니다.

  • GET /Users/

    • GET

    • Notion 사용자 ID로 특정 워크스페이스 멤버를 검색합니다. 이 ID는 00000000-0000-0000-0000-000000000000 형식의 32자 UUID입니다.

    • meta.created와 meta.lastModified의 값은 유의미한 타임스탬프 값이 아닙니다.

  • POST /Users

    • POST

    • 추가하려는 사용자에게 이미 동일한 이메일을 사용하는 Notion 계정이 있는 경우, 해당 계정이 워크스페이스에 추가됩니다.

    • 사용자가 존재하지 않는 경우 이를 호출하면 새 Notion 사용자가 생성되고 해당 사용자가 워크스페이스에 추가됩니다. 그리고 생성된 Notion 사용자 프로필에 매핑됩니다.

    • SCIM API는 사용자 생성 시 프로필 사진 속성을 읽지만 향후 업데이트에서는 읽지 않습니다.

  • PATCH /Users/

    • PATCH

    • 일련의 작업을 통해 업데이트하고, 업데이트된 사용자 레코드를 반환합니다.

참고: 멤버가 사용하는 이메일 도메인에 대한 소유권이 인증된 경우에만 멤버의 프로필 정보를 업데이트할 수 있습니다. 일반적으로 Notion에 구성한 SAML SSO 이메일 도메인과 동일합니다. 이 가이드를 통해 도메인을 인증하세요 →

  • PUT /Users/

    • PUT

    • 업데이트하고, 업데이트된 사용자 레코드를 반환합니다.

  • DELETE /Users/

    • DELETE

    • 워크스페이스에서 사용자를 제거합니다. 사용자가 모든 활성 세션에서 로그아웃됩니다.

      • SCIM으로 사용자 계정을 삭제할 수는 없습니다. 계정 삭제는 수동으로 수행해야 합니다.

      • PATCH /Users/를 보내 활성화된 유저 속성을False로 설정해도 사용자를 워크스페이스에서 제거할 수 있습니다. 또는 PUT /Users/ 요청을 보낼 수도 있습니다.

      • SCIM 봇 토큰을 만든 워크스페이스 소유자는 API를 통해 제거할 수 없습니다. 워크스페이스 소유자가 SCIM API를 통해 제거되면 해당 소유자가 만든 모든 토큰이 취소되고 해당 봇을 사용하는 모든 API 통합이 중단됩니다.

참고: 기존 사용자 스키마의 확장 기능인 역할 속성을 사용해서 사용자에게 워크스페이스 수준을 할당할 수 있어요. 형식은 다음과 같아요.

"urn:ietf:params:scim:schemas:extension:notion:2.0:User": { role: string // "owner" | "membership_admin" | "member" }

  • GET /Groups

    • GET

    • 페이지를 매긴 워크스페이스 멤버 목록을 검색합니다.

    • startIndex 와  count 매개 변수를 사용하여 페이지를 매길 수 있습니다. startIndex는1부터 시작하며 최대 개수는 100입니다. 예:GET

      • 페이지네이션이 사용되지 않으면 한 번의 요청에서 최대 100개의 워크스페이스 그룹이 반환됩니다.

    • 필터 매개 변수를 사용하여 결과를 필터링할 수 있습니다. 그룹은 displayName 속성으로 필터링할 수 있습니다. 예:GET

  • GET /Groups/

    • GET

    • Notion 그룹 ID로 특정 워크스페이스 그룹을 검색합니다. 이 ID는 00000000-0000-0000-0000-000000000000 형식의 32자 UUID입니다.

  • POST /Groups

    • POST

    • 새 워크스페이스 그룹을 생성합니다.

  • PATCH /Groups/

    • PATCH

    • 일련의 작업을 통해 워크스페이스 그룹을 업데이트합니다.

  • PUT /Groups/

    • PUT

    • 워크스페이스 그룹을 업데이트합니다.

  • DELETE /Groups/

    • DELETE

    • 워크스페이스 그룹을 삭제합니다.

참고: 그룹을 삭제했을 때 하나 이상의 페이지에 '모두 허용' 권한을 가진 사용자가 아무도 없다면, 그룹 삭제가 불가능합니다.


피드백 보내기

이 내용이 도움이 되었나요?


Powered by Fruition