RBAC 관리#

RBAC(역할 기반 접근 제어) 관리를 통해 슈퍼 관리자는 세분화된 세부 권한을 묶은 역할을 정의하고 사용자에게 할당할 수 있습니다. RBAC를 사용하면 Backend.AI 시스템 전반에서 특정 사용자가 다양한 리소스에 대해 수행할 수 있는 동작을 제어할 수 있습니다.

RBAC 관리 페이지에 접근하려면 사이드바 메뉴의 관리자 설정 섹션에서 RBAC 관리를 클릭합니다.

그림 21.1

역할 목록#

역할 목록 페이지는 모든 역할을 테이블 형태로 표시합니다. 페이지 상단의 컨트롤을 사용하여 역할을 필터링, 검색 및 정렬할 수 있습니다.

  • 상태 필터: 활성비활성 역할을 전환하는 세그먼트 컨트롤입니다. 기본적으로 활성이 선택되어 있습니다.
  • 이름 검색: 이름으로 역할을 검색하거나 소스(시스템 또는 사용자 정의)로 필터링할 수 있는 속성 필터입니다. 필터 입력은 선택한 속성에 따라 달라집니다. 예를 들어 소스 필터는 사용 가능한 값(시스템 / 사용자 정의)을 선택형 입력으로 노출하고, 이름 필터는 자유 형식 텍스트 입력을 제공합니다.
  • 역할 생성: 새로운 사용자 정의 역할을 생성하는 버튼입니다.

테이블에는 다음 열이 표시됩니다:

  • 역할 이름: 역할의 이름입니다. 이름을 클릭하면 역할 상세 패널이 열립니다.
  • 설명: 역할의 목적에 대한 간략한 설명입니다.
  • 적용 범위: 역할에 처음 할당된 적용 범위의 타입입니다. 역할에 여러 적용 범위가 할당된 경우 +N 표시가 함께 표시됩니다.
  • 적용 대상 ID: 역할에 처음 할당된 적용 범위의 원시 ID입니다. 여러 적용 범위가 할당된 경우 +N 표시가 함께 표시됩니다.
  • 소스: 역할이 시스템(사전 정의) 또는 사용자 정의(사용자 생성)인지 나타냅니다.
  • 자동 할당: 역할이 등록된 적용 범위에 사용자가 추가될 때 자동으로 역할이 할당되는지 여부를 나타냅니다. 자동 할당이 활성화된 경우 활성, 비활성화된 경우 비활성으로 표시됩니다.
  • 생성일: 역할이 생성된 날짜와 시간입니다.
  • 수정일: 역할이 마지막으로 수정된 날짜와 시간입니다.

시스템 역할과 사용자 정의 역할#

역할은 두 가지 소스 유형으로 분류됩니다:

  • 시스템: 자동 생성되는 역할입니다. 이름이나 설명을 편집할 수 없지만, 사용자 할당 및 세부 권한을 관리할 수 있습니다.
  • 사용자 정의: 슈퍼 관리자가 생성한 역할입니다. 이름, 설명, 할당, 적용 범위, 세부 권한 등 모든 항목을 편집할 수 있습니다.

역할 생성#

역할을 생성할 때는 적용 범위를 먼저 정의합니다. 적용 범위는 역할을 특정 리소스 엔티티(도메인, 프로젝트, 사용자 등)에 바인딩하여, 이후 추가되는 모든 세부 권한이 여기에서 정의한 적용 범위 내에서만 작동하도록 제한합니다.

새로운 사용자 정의 역할을 생성하려면:

  1. 역할 목록 페이지 오른쪽 상단의 역할 생성 버튼을 클릭합니다
  2. 생성 모달에서 다음 필드를 입력합니다:
    • 역할 이름 (필수): 고유한 역할 이름을 입력합니다
    • 설명 (선택): 역할의 목적에 대한 설명을 입력합니다
    • 자동 할당 (선택): 활성화하면 역할이 등록된 적용 범위에 사용자가 추가될 때 자동으로 역할이 부여됩니다. 기본적으로 비활성화되어 있습니다.
    • 적용 범위 / 적용 대상 (필수, 최소 1개): 각 적용 범위 행에서 적용 범위를 선택한 후 해당 범위 내의 특정 적용 대상을 선택합니다. 추가 버튼으로 적용 범위 행을 더 추가하거나 삭제 아이콘으로 행을 제거할 수 있습니다. 최소 하나의 적용 범위를 추가해야 합니다.
  3. 확인을 클릭하여 역할을 생성합니다

그림 21.2

정보

역할 생성 시점에 설정하는 적용 범위적용 대상은 그 자체로 어떤 권한을 부여하지 않습니다. 대신 이후 이 역할에 세부 권한을 추가할 때 선택할 수 있는 적용 범위 / 적용 대상의 후보를 미리 정의하는 역할을 합니다. 즉, 역할 생성 단계에서는 이 역할의 세부 권한이 가질 수 있는 적용 범위와 적용 대상의 범주를 미리 한정하는 것이며, 세부 권한은 여기에서 정의한 적용 범위와 적용 대상 안에서만 설정할 수 있습니다.

주의

적용 범위는 역할 생성 시점에 정의되며, 이후 역할 상세 패널에서 수정할 수 없습니다. 역할을 생성하기 전에 적용 범위를 신중하게 계획하세요.

역할 상세 보기#

역할에 대한 상세 정보를 확인하려면 테이블에서 역할 이름을 클릭합니다. 페이지 오른쪽에 상세 패널이 열립니다.

패널 헤더에는 역할 이름이 표시되며, 사용자 정의 역할의 경우 편집 버튼이 제공됩니다. 상세 섹션에는 다음 메타데이터가 표시됩니다:

  • 소스: 시스템 또는 사용자 정의
  • 상태: 활성 또는 비활성
  • 자동 할당: 자동 할당이 활성 또는 비활성 여부를 나타냅니다. 활성 상태이면 역할이 등록된 적용 범위 중 하나에 사용자가 추가될 때 자동으로 역할이 부여됩니다.
  • 생성일: 생성 시간
  • 수정일: 마지막 수정 시간
  • 설명: 역할의 설명

메타데이터 아래에는 역할 범위, 세부 권한, 역할 할당 세 개의 탭이 있습니다.

그림 21.3

역할 편집#

사용자 정의 역할의 이름, 설명 또는 자동 할당 설정을 편집하려면:

  1. 테이블에서 역할 이름을 클릭하여 상세 패널을 엽니다
  2. 패널 헤더의 편집 버튼(연필 아이콘)을 클릭합니다
  3. 편집 모달에서 다음 필드를 수정합니다:
    • 역할 이름: 역할의 이름
    • 설명: 역할의 목적에 대한 설명
    • 자동 할당: 활성화하면 역할이 등록된 적용 범위에 사용자가 추가될 때 자동으로 역할이 부여됩니다.
  4. 확인을 클릭하여 변경 사항을 저장합니다

그림 21.4

참고

편집 버튼은 사용자 정의 역할에서만 사용할 수 있습니다. 시스템 역할의 이름이나 설명은 수정할 수 없습니다. 또한 역할 생성 후에는 어느 경우에도 적용 범위를 수정할 수 없습니다.

역할 범위 보기#

상세 패널의 역할 범위 탭은 역할 생성 시에 할당된 적용 범위 항목을 나열합니다. 각 항목은 이 역할의 세부 권한이 참조할 수 있는 적용 대상 집합을 제한합니다.

그림 21.5

테이블에는 다음 열이 표시됩니다:

  • 적용 범위: 적용 범위 항목의 타입입니다(예: 도메인, 프로젝트, 사용자).
  • 적용 대상: 적용 대상의 표시 이름입니다(예: 도메인 이름, 프로젝트 이름, 사용자 이메일).
  • 적용 대상 ID: 적용 대상의 UUID입니다.

상단의 필터 컨트롤을 사용하여 적용 범위 타입으로 항목을 필터링할 수 있습니다.

참고

이 탭에서 적용 범위는 읽기 전용입니다. 역할의 적용 범위를 변경하려면 원하는 적용 범위를 가진 새 역할을 생성해야 합니다.

세부 권한 관리#

상세 패널의 세부 권한 탭에서 역할에 구성된 세분화된 세부 권한을 확인할 수 있습니다.

그림 21.6

세부 권한 이해하기#

각 세부 권한은 네 가지 구성 요소로 이루어져 있습니다:

  • 적용 범위: 세부 권한이 적용될 유효 범위(예: 도메인, 프로젝트, 사용자)
  • 적용 대상: 유효 범위 내의 특정 엔티티(예: 특정 도메인 이름, 특정 프로젝트)
  • 권한 타입: 권한의 적용 유효 범위 안에서 동작이 수행되는 대상입니다.
  • 동작: 권한 타입에 허용되는 동작입니다. 선택한 권한 타입에 따라 허용되는 동작만 필터링되어 표시됩니다. 동작은 두 가지 카테고리로 그룹화됩니다:
    • 직접 수행: 생성, 조회, 수정, 삭제, 영구 삭제
    • 타인에게 위임: 모든 권한 위임, 조회 권한 위임, 수정 권한 위임, 삭제 권한 위임, 영구 삭제 권한 위임
정보

각 세부 권한의 적용 범위 / 적용 대상 조합은 역할의 적용 범위 항목에서 상속됩니다. 세부 권한을 추가할 때는 역할 생성 시에 정의된 적용 범위 중에서만 선택할 수 있습니다. 역할의 범위를 넓히려면 적용 범위가 추가된 새 역할을 생성해야 합니다.

세부 권한 설정 예시#

다음은 네 가지 구성 요소가 어떻게 함께 작동하는지 이해하는 데 도움이 되는 일반적인 세부 권한 설정 예시입니다. 적용 범위 / 적용 대상 열은 세부 권한이 재사용하는 역할 수준의 적용 범위를 나타냅니다.

시나리오 적용 범위 / 적용 대상 권한 타입 동작
특정 프로젝트에서 스토리지 폴더 생성 허용 프로젝트 / my-project 폴더 생성
특정 도메인 내 모든 세션 조회 허용 도메인 / default 세션 조회
특정 도메인 내 모델 서비스 관리 허용 도메인 / default 모델 서비스 생성, 조회, 수정
특정 도메인 내 컨테이너 이미지 삭제 허용 도메인 / default 이미지 삭제

세부 권한 추가#

  1. 상세 패널을 열고 세부 권한 탭을 선택합니다
  2. 세부 권한 추가 버튼을 클릭합니다
  3. 모달에서 다음 필드를 입력합니다:
    • 적용 범위 / 적용 대상: 역할에 할당된 적용 범위 항목 중 하나를 선택합니다. 드롭다운에는 실제 동작을 수행할 수 있는 엔티티가 하나 이상 존재하는 적용 범위만 나열됩니다. 적용 대상은 원시 UUID 대신 현지화된 표시 이름(예: 도메인 또는 프로젝트의 표시 이름)으로 표시되어, 어떤 적용 범위인지 한눈에 확인할 수 있습니다.
    • 권한 타입: 엔티티 유형을 선택합니다. 선택한 적용 범위에 유효한 유형만 표시됩니다. 권한 타입 라벨(예: 역할 할당)도 UI 언어에 맞춰 현지화되어 표시됩니다.
    • 동작: 동작을 선택합니다(예: 생성, 조회, 수정, 삭제, 영구 삭제 또는 위임 동작)
  4. 추가를 클릭하여 세부 권한을 생성합니다

그림 21.7

세부 권한 제거#

  1. 세부 권한 탭에서 제거할 세부 권한 옆의 세부 권한 제거 버튼을 클릭합니다
  2. 버튼에 연결된 작은 확인 팝업이 나타납니다. 확인을 클릭하여 제거하거나 취소를 눌러 닫습니다.

역할에서 세부 권한을 제거해도 역할 자체, 적용 범위, 사용자 할당은 그대로 유지되며 세부 권한 집합에서만 분리됩니다. 동일한 세부 권한을 같은 탭에서 다시 추가할 수 있으므로, 이 동작은 되돌릴 수 있는 작업으로 간주되며 이름을 입력해 확인하는 모달 대신 가벼운 팝업 확인 방식을 사용합니다.

사용자 할당 관리#

상세 패널의 역할 할당 탭에서 해당 역할에 할당된 사용자를 확인할 수 있습니다.

그림 21.8

역할에 사용자 추가#

  1. 상세 패널을 열고 역할 할당 탭을 선택합니다
  2. 사용자 추가 버튼을 클릭합니다
  3. 모달에서 이메일이나 이름으로 사용자를 검색합니다
  4. 체크박스를 사용하여 한 명 이상의 사용자를 선택합니다
  5. 추가를 클릭하여 선택한 사용자를 역할에 할당합니다

그림 21.9

사용자 추가는 일괄 작업입니다. 한 번에 여러 사용자를 선택하여 모두 한꺼번에 할당할 수 있습니다.

역할에서 사용자 해제#

한 명의 사용자를 해제하거나 여러 명의 사용자를 한 번에 해제할 수 있습니다.

한 명의 사용자를 해제하려면:

  1. 역할 할당 탭에서 사용자 행 위에 마우스를 올린 후 사용자 옆의 해제(휴지통) 아이콘을 클릭합니다.
  2. 사용자 해제 확인 모달이 열립니다. 목록에 표시된 사용자를 확인한 후 사용자 해제를 클릭하여 확정하거나 취소를 눌러 닫습니다.

그림 21.10

여러 명의 사용자를 한 번에 해제하려면:

  1. 역할 할당 탭에서 체크박스를 사용하여 제거할 사용자를 선택합니다. 해제 컨트롤 옆에 선택된 행 수를 나타내는 선택 개수 라벨이 표시되며, 해당 라벨의 선택 해제 컨트롤을 사용하여 모든 행의 선택을 해제할 수 있습니다.
  2. 하나 이상의 행이 선택되면 나타나는 일괄 사용자 해제 버튼(휴지통 아이콘)을 클릭합니다.
  3. 사용자 해제 확인 모달에서 목록에 표시된 사용자를 확인한 후 사용자 해제를 클릭하여 확정하거나 취소를 눌러 닫습니다.

그림 21.11

사용자를 해제하면 해당 사용자의 역할 할당만 제거되며, 역할 자체와 다른 할당은 그대로 유지됩니다.

참고

역할 할당 해제는 역할 할당 탭에서 사용자를 다시 추가하면 복구할 수 있습니다.

프로젝트 관리자 권한 부여#

프로젝트를 생성하면 project-<project_id>-admin이라는 전용 역할이 함께 생성되며, 여기서 <project_id>는 해당 프로젝트의 UUID입니다. 이 역할에 사용자를 할당하면 해당 사용자에게 그 프로젝트에 대한 프로젝트 관리자 권한이 부여됩니다. 즉, 시스템 전반의 슈퍼 관리자 권한을 갖지 않고도 해당 프로젝트의 사용자, 세션, 배포, 스토리지 폴더를 관리할 수 있습니다.

그림 21.12

사용자에게 프로젝트 관리자 권한을 부여하려면:

  1. 역할 목록을 열고 대상 프로젝트의 project-<project_id>-admin 역할을 찾습니다. 속성 필터를 사용하여 역할 이름으로 검색할 수 있습니다(예: project-를 입력하여 목록을 좁힙니다).
  2. 역할 이름을 클릭하여 역할 상세 화면을 엽니다.
  3. 해당 역할에 대해 역할에 사용자 추가의 절차를 따라 사용자를 할당합니다.

그림 21.13

사용자에게는 즉시 프로젝트 관리자 권한이 부여됩니다. 다음에 헤더의 프로젝트 드롭다운을 열면 해당 프로젝트 옆에 프로젝트 관리자 배지가 표시되며, 프로젝트 관리자 기능 챕터에서 설명한 프로젝트 관리자 전용 사이드바 항목도 함께 나타납니다.

프로젝트 관리자 권한을 회수하려면, 동일한 project-<project_id>-admin 역할에 대해 역할에서 사용자 해제의 절차를 따릅니다.

© 2026 Lablup Inc. · Backend.AI WebUI Docs