공지
주간 SaaS 의 발전을 위해 설문조사에 참여해 주세요!

엔터프라이즈 SaaS를 위한 RBAC 모범 사례

엔터프라이즈 솔루션을 위한 체크리스트

2023.08.29 | 조회 870 |
0

주간 SaaS

B2B SaaS 비즈니스 모델과 멀티 테넌트 아키텍처 설계에 관한 좋은 콘텐츠를 소개합니다.

안녕하세요 주간SaaS 입니다. B2B SaaS의 경우에는 테넌트와 사용자의 관계가 1대 다수가 되는 경우가 많습니다. 즉 하나의 테넌트는 다양한 역할과 임무를 가진 사용자들의 그룹으로 대표 됩니다. 이에 따라 다양한 역할과 임무에 따라 테넌트의 자원과 기능에 대한 접근 제어가 필수적 입니다. 

오늘은 엔터프라이즈 SaaS를 위한 RBAC(역할 기반 액세스 제어)을 어떤 구조로 만들면 좋을지를 소개하는 을 소개 합니다. 원문 에는 저희가 예시로 추가한 Intercom 외에 HubSpotSquare의 RBAC 예시도 다루니 꼭 시간내어 보시면 좋겠습니다.


 

역할 기반 액세스 제어(RBAC) 기능을 통해 애플리케이션 관리자는 팀 내 일부 사용자의 권한을 제한할 수 있습니다.

SaaS 애플리케이션에서 팀 기능을 처음 시작할 때 모든 사용자에게 모든 기능에 액세스할 수 있는 전체 권한을 부여하는 경우가 많습니다. 그러나 대규모 고객의 경우 팀원별로 업무 수행에 필요한 기능만 할당받아야 하는 요구 사항이 있습니다(최소 권한 원칙 참조). 따라서 관리자는 사용자 수준 활동에 대해 별도의 계정을 유지하는 것이 보안 모범 사례이기도 합니다. 따라서 SaaS 애플리케이션은 역할 기반 액세스 제어를 제공해야 엔터프라이즈급으로 사용할 수 있습니다.

HubSpotIntercom의 RBAC 구현에 대한 화면 별 분석 내용을 포함했습니다.

가장 기본적인 수준 RBAC:

아주 간단한 RBAC 구현은 단순히 사용자를 읽기 전용으로 식별하는 것부터 시작합니다. 이러한 사용자는 모든 기능과 리소스를 볼 수 있지만 변경할 수는 없습니다.

표준 기능:

결국 고객은 다양한 기능과 리소스에 대한 읽기-쓰기, 읽기 전용 또는 액세스 권한이 없는 역할에 대한 보다 세밀한 제어를 필요로 합니다. 이러한 경우 많은 SaaS 회사에서 정의된 권한이 있는 일반 역할을 만듭니다. 예를 들면 다음과 같습니다:

수퍼 관리자(Super Admins)- 사용자를 수정할 수 있을 뿐만 아니라 모든 기능과 리소스를 수정할 수 있습니다.

청구 관리자(Billing Admins) - 계정 청구 데이터를 수정할 수 있지만 사용자나 기능은 수정할 수 없습니다.

사용자(Users) - 제품의 모든 기능을 사용할 수 있지만 사용자를 수정하거나 청구 정보를 볼 수 있는 액세스 권한은 없습니다.

보고 사용자(Reporting users) - 보고 기능에만 액세스할 수 있으며 추가 리소스를 수정할 수 없습니다. 기능 전용 사용자(Feature only users) - 사용자가 애플리케이션 특정 기능 하나만 사용하도록 제한합니다.

고급 수준 RBAC:

대부분의 고급 엔터프라이즈 소프트웨어 솔루션은 어느 시점에서는 각 기능에 대해 특정 읽기/쓰기, 읽기 전용 또는 액세스 권한 없음으로 역할을 개별적으로 사용자 지정할 수 있는 기능을 제공합니다. 때문에 이는 종종 복잡함을 가져 옵니다. 그래서 많은 소프트웨어 제품은 사용자 지정의 역할이나 계정을 프로비저닝하기 위한 체크박스 화면이 없는 것을 선호합니다.

통합하는 방법

역할 할당은 초대 및 사용자 관리 흐름에 통합하는 것이 가장 좋습니다. 새 사용자가 만들어질 때마다 필요한 기능에 액세스할 수 있는 특정 권한이 지정되어야 합니다. 권한의 지속적인 관리는 각 사용자의 역할이 명확하게 식별된 사용자 목록에서 이루어져야 합니다.

제한된 기능에 대한 고지

사용자의 기능을 제한한 후에는 사용자가 해당 기능의 접점을 접할 때의 경험을 고려하는 것이 중요합니다. 즉, 사용자가 사용자를 초대할 수 없는 경우 '사용자 초대' 버튼이 권한 부족으로 인해 비활성화 되었음 을 명확하게 표시하여 비활성화 되어 있는지 확인합니다.

다양한 역할의 사용자에 대한 온보딩

사용자가 처음 가입하는 방법부터 온보딩 이메일 수신 이르기까지 다양한 사용자 역할 유형에 대한 온보딩 흐름을 고려하는 것이 중요합니다. 왜냐하면 사용자의 역할과 가장 밀접하게 연관된 기능을 온보딩 과정에서 중요하게 강조하는 것이 사용자가 서비스를 채택하고 이해하는데 있어 매우 중요하기 때문입니다.

예시: Intercom RBAC

인터콤은 고객과의 커뮤니케이션을 위한 애플리케이션입니다. 조직 내 많은 사람들이 이와 같은 애플리케이션에 액세스해야 하기 때문에 Intercom은 역할 기반 액세스 제어 또는 사용자 권한을 도입하는 것이 중요했습니다.

권한 유형:

각 팀원이 앱 설정, 청구, 사용자 데이터에 액세스할 수 있는지, 아니면 수동 메시지 및 자동 메시지를 보내거나 편집할 수 있는 Intercom 앱의 기본 기능에 액세스할 수 있는지 선택할 수 있습니다.

Full Access

전체 액세스 권한이 있는 사용자는 앱 설정 및 청구를 포함하여 Intercom의 모든 읽기/쓰기 권한을 가집니다.

Restricted Access

인터콤에서 제한된 액세스 권한을 가진 사용자는 앱 설정, 팀원 및 청구서를 편집할 수 있는 기능을 사용할 수 없습니다.

추가 제한:

  • 사용자 및 회사 데이터 내보내기를 방지합니다.
  • 한 번에 두 명 이상의 사람에게 메시지를 보내지 못하도록 합니다.

앱별 권한: 획득, 참여, 학습 및 지원

보기 권한

없는 기능

Intercom은 다양한 시나리오에서 사용자가 고객과 대화할 수 있도록 특별한 제한을 위한 권한 설정을 두지 않습니다. 예를 들어, 당신은 영업 팀이 메인 웹사이트나 랜딩 페이지에서만 고객과 대화하도록 하고 싶을 수 있습니다. 또는 고객 지원 팀이 애플리케이션의 특정 부분에서만 사용자와 대화하도록 하고 싶을 수 있습니다. Intercom은 이러한 다양한 시나리오에서 사용자가 고객과 소통할 수 있도록 세부적인 권한 설정을 두지 않습니다.

다가올 뉴스레터가 궁금하신가요?

지금 구독해서 새로운 레터를 받아보세요

✉️
댓글

의견을 남겨주세요

확인
의견이 있으신가요? 제일 먼저 댓글을 달아보세요 !
© 2024 주간 SaaS

B2B SaaS 비즈니스 모델과 멀티 테넌트 아키텍처 설계에 관한 좋은 콘텐츠를 소개합니다.

자주 묻는 질문 서비스 소개서 오류 및 기능 관련 제보

서비스 이용 문의admin@team.maily.so

메일리 사업자 정보

메일리 (대표자: 이한결) | 사업자번호: 717-47-00705 | 서울 서초구 강남대로53길 8, 8층 11-7호

이용약관 | 개인정보처리방침 | 정기결제 이용약관