Logto의 멀티 테넌시 모델 설명
Logto의 멀티 테넌시 모델을 어떻게 설계했는지와 이것이 SaaS 애플리케이션에 가져다주는 이점을 살펴보세요.
Logto의 멀티 테넌시 모델을 어떻게 설계했는지와 이것이 SaaS 애플리케이션에 가져다주는 이점을 살펴보세요.
너는 "멀티 테넌시"라는 용어를 사용하여 각 테넌트가 자체 사용자, 역할, 권한 및 데이터를 가지는 신원 격리를 나타내는 일부 제품에 대해 들어봤을 수도 있다.
직관에 반할 수 있지만, 사실 "멀티 테넌시"는 그 반대의 의미를 나타낸다: 단일 인스턴스에서 여러 테넌트가 리소스를 공유한다. 사용자에게는 애플리케이션 내의 신원이 운전면허증과 같다. 예를 들어, 하나의 운전면허증으로 다른 주에서 운전할 수 있지 (하나의 신원으로 여러 조직을 커버), 주마다 새로운 운전면허증을 신청하는 것이 아니다.
Logto에서 우리는 설계 초기 단계에서 이러한 혼란을 알아차렸고, 너의 애플리케이션과 사용자에게 올바르게 도와주기로 했다. 여기 우리의 설계가 있다:
이 모델은 신원 관리를 유연하게 하고 재사용성을 제공하며, 특히 SaaS 애플리케이션에 적합하다. 인기 있는 SaaS 애플리케이션을 살펴보면 모두 이 모델에 적합할 수 있음을 알 수 있다. 각 애플리케이션에서는 "조직"이라는 용어가 "워크스페이스", "팀" 등으로 다르게 표현될 수 있지만 개념은 동일하다.
예를 들어, Notion(인기 있는 협업 도구)에서는:
따라서 사용자는 계정을 전환하거나 다시 로그인하지 않고도 쉽게 워크스페이스 간 전환이 가능하며, 워크스페이스 간의 격리성을 유지할 수 있다. Logto의 모델에서 이것을 번역하면 다음과 같다:
역할에 따라 사용자는 다른 워크스페이스(조직)에서 다른 권한을 가질 수 있다.
사용자는 진정한 싱글 사인온 경험을 즐길 수 있다. 조직 간 전환은 탭 간 전환만큼 간단하다.
SaaS 애플리케이션의 한 가지 장점은 표준화되고 확장 가능하다는 것이다. 예를 들어, Notion에서 몇 번의 클릭으로 새 워크스페이스를 생성할 수 있으며, 바로 사용할 수 있다.
너의 애플리케이션이 성장함에 따라 각 조직에 더 많은 역할과 권한을 추가하고 싶을 수 있다. 예를 들어, 새로운 역할인 "게스트"와 새로운 권한인 "초대:게스트". 모든 기존 조직을 하나씩 업데이트해야 한다면 악몽이 될 수 있다.
Logto를 사용하면 조직 템플릿을 업데이트하면 모든 기존 조직이 자동으로 업데이트된다.
Logto에서는 동일한 액세스 제어 모델(RBAC)을 조직과 API 리소스 모두에 사용한다. RBAC에 익숙하다면 새로운 액세스 제어 모델을 배울 필요가 없다. 동시에 이들은 서로 격리되어 있으므로, 다양한 활용 사례에 사용할 수 있다.
가장 흥미로운 부분은 이를 동시에 사용할 수 있다는 것이다. Notion 예제를 확장해 보자:
대부분의 Logto SDK는 두 가지 유형의 RBAC를 모두 지원한다.
차이점
조직 RBAC와 API 리소스 RBAC는 다음과 같은 측면에서 다르다:
SaaS 애플리케이션을 구축하는 것은 어렵지만, Logto는 너가 핵심 비즈니스에 집중할 수 있도록 도와주기를 바란다. 궁금한 사항이나 제안이 있으면 주저하지 말고 피드백을 제공해 달라.