본문으로 건너뛰기

조직 생성

여러 고객을 대상으로 하는 멀티 테넌트 앱 (예: 멀티 테넌트 SaaS 앱)을 구축한다고 상상해 보세요. 각 고객은 전용 테넌트를 소유하게 됩니다.

조직은 일반적으로 다음과 같은 경우에 생성됩니다:

  1. 신규 고객이 가입하여 비즈니스를 위한 계정과 테넌트를 모두 생성할 때
  2. 기존 사용자가 앱 내에서 새로운 조직을 생성할 때
신규 계정이 조직을 생성함 기존 사용자가 조직을 생성함

조직 생성 구현

앱에서 조직을 생성하는 방법은 두 가지가 있습니다.

Logto Console을 통한 생성

Logto Console UI에서 조직을 수동으로 생성할 수 있습니다. Console > 조직로 이동하여 조직을 생성하고, 구성원 및 역할을 할당하며, 조직 로그인 경험을 맞춤 설정하세요.

동일한 역할과 권한을 공유하는 유사한 조직을 일괄 생성하려면 조직 템플릿을 만드세요.

Logto Management API를 통한 생성

Console은 수동 설정에 적합하지만, 대부분의 앱은 최종 사용자가 직접 조직을 생성하고 관리할 수 있도록 지원합니다. 이를 위해 Logto Management API로 해당 기능을 구현하세요.

노트:

Logto Management API가 처음이라면 다음을 먼저 읽어보세요:

Management APIManagement API와 상호작용하기

백엔드가 기계 간 (M2M) 메커니즘을 통해 Logto Management API에 연결되어 있고, M2M 액세스 토큰을 획득했다고 가정합니다.

Management API로 조직을 생성하세요 (API 참조):

curl \
-X POST https://[tenant_id].logto.app/api/organizations \
-H "Authorization: Bearer $M2M_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tenantId":"string","name":"string","description":"string","customData":{},"isMfaRequired":false,"branding":{"logoUrl":"string","darkLogoUrl":"string","favicon":"string","darkFavicon":"string"},"createdAt":1234567890}'

그런 다음 사용자를 조직의 구성원으로 추가하세요 (API 참조):

curl \
-X POST https://[tenant_id].logto.app/api/organizations/{id}/users \
-H "Authorization: Bearer $M2M_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"userIds":["string"]}'

선택적으로, 사용자에게 특정 조직 역할을 할당할 수 있습니다 (API 참조).

자세한 내용은 전체 API 명세를 확인하세요.

이 호출들을 자체 API 레이어로 감싸세요. 사용자가 앱에서 “조직 생성” 작업을 수행할 때, 권한을 확인하여 요청을 검증한 후 Logto Management API를 호출하여 작업을 완료하세요.

사용자 요청에서 조직 토큰 검증하기

앱에서 사용자가 조직의 컨텍스트에서 작업을 수행할 때는 일반 액세스 토큰 대신 조직 토큰을 사용해야 합니다. 조직 토큰은 조직 권한을 포함하는 JWT입니다. 모든 액세스 토큰과 마찬가지로, 클레임을 디코드하고 "scope" 클레임을 검증하여 권한을 적용할 수 있습니다.

인가 (Authorization) 시나리오 및 조직 토큰 검증 방법에 대한 자세한 내용은 인가 (Authorization)를 참고하세요.