Skip to main content

역할 기반 접근 제어(RBAC)

개요

ECI는 RBAC(Role-Based Access Control) 로 조직 사용자의 리소스 접근 범위를 제어합니다. 사용자에게 직접 권한을 주는 대신 역할(Role) 단위로 묶어서 관리하므로, 동일한 업무를 수행하는 사용자에게 일관된 권한을 빠르게 부여할 수 있습니다.

┌─────────┐ 할당 ┌─────────┐ 포함 ┌─────────┐
│ 사용자 │ ────────▶│ 역할 │ ────────▶│ 권한 │
└─────────┘ └─────────┘ └─────────┘

기본 제공 역할 4종

ECI는 일반적인 사용 시나리오에 맞춰 미리 구성된 4가지 역할을 제공합니다. 기본 제공 역할은 수정·삭제 불가입니다.

역할명한글명적합한 대상
Owner소유자조직 전체를 관리하는 담당자. 인원을 최소화하는 것을 권장
Contributor기여자일반 연구자·개발자. 가상머신·스토리지·네트워크 리소스를 직접 생성·운영
Support서포터운영 지원 담당자. 리소스 조회와 제한적 수정으로 트러블슈팅 수행
Reader뷰어인턴·감사자·외부 협력자 등 조회만 필요한 경우

역할별 권한 요약

작업 영역OwnerContributorSupportReader
리소스 조회 (가상머신·네트워크·스토리지·메트릭)
가상머신·네트워크·스토리지 생성·수정·삭제일부:
가상머신 웹 콘솔 접근::
사용자 초대·역할 할당:::
사용자 정의 역할 생성·수정:::
액세스 토큰 발급·삭제본인 토큰만::
활동 로그 조회::
청구서·사용량 조회:::
정확한 권한 매트릭스는 포털에서 확인하세요

위 표는 일반 사용 패턴 기준입니다. 각 역할의 정확한 권한 목록은 사용자 역할 관리 페이지에서 역할을 선택하면 확인할 수 있습니다.


권한(Permission) 구조

권한은 ACL. 접두사로 시작하는 4–5단계 코드로 표현됩니다.

ACL.{섹션}.{하위섹션}.{액션} # Resource 외 섹션
ACL.Resource.{Compute|Network|Storage}.{리소스}.{액션} # Resource 섹션

예시

  • ACL.Resource.Compute.VirtualMachine.CREATE: 가상머신 생성
  • ACL.Resource.Storage.BlockStorage.UPDATE: 블록 스토리지 수정
  • ACL.Resource.Compute.VirtualMachineAllocation.ACCESS_WEB_CONSOLE: 가상머신 웹 콘솔 접근
  • ACL.Billing.Billing.READ: 청구서·사용량 조회
  • ACL.User.UserInvite.CREATE: 사용자 초대 발송
  • ACL.Alert.AlertRule.CREATE: 알림 규칙 생성

Resource 섹션은 Compute / Network / Storage 중간 분류 아래에 리소스가 있어 5단계로 길어집니다. 단, Resource.OrganizationResourceSummary처럼 중간 분류 없이 바로 붙는 항목도 있습니다.

액션 종류

액션의미
CREATE리소스 생성
READ리소스 조회
UPDATE리소스 수정
DELETE리소스 삭제
ACCESS_WEB_CONSOLE가상머신 웹 콘솔 접근 (가상머신 전용)

섹션과 하위 섹션

섹션하위 분류 / 리소스
GeneralNotice, Organization, Region
InfraBlockStorageImage, InstanceType, Zone
BillingBilling
PricingPricing
MetricMetric
AlertAlertRule, AlertActionTemplate, AlertEvent
UserACL, User, UserAudit, UserAccessToken, UserInvite, UserRole
Resource.ComputeVirtualMachine, VirtualMachineAllocation, VirtualCluster, VirtualClusterAllocation
Resource.NetworkVirtualNetwork, Subnet, NetworkInterface, PublicIp, Vpn, LoadBalancer
Resource.StorageBlockStorage, BlockStorageSnapshot, BlockStorageSnapshotScheduler, ObjectStorage, ObjectStorageUser, ObjectStorageUserGrant, ParallelFileSystem, ParallelFileSystemMember
Resource (직접)OrganizationResourceSummary
READ 권한은 다른 권한의 기본 전제입니다

CREATE/UPDATE/DELETE만 부여하고 READ를 빼면 사용자가 리소스 목록을 못 봐서 실제로 사용할 수 없습니다. 생성·수정·삭제 권한을 줄 때는 같은 리소스의 READ 권한도 함께 부여하세요.


사용자 정의 역할 생성

조직별 워크플로에 맞춰 역할을 직접 만들 수 있습니다.

1단계: 역할 생성

  1. 사용자 관리 > 사용자 역할로 이동합니다.
  2. 역할 생성을 클릭합니다.
  3. 역할명·설명을 입력합니다.
  4. 권한 트리에서 필요한 권한을 체크합니다.
  5. 생성을 클릭합니다.

2단계: 사용자에게 역할 부여

  1. 사용자 관리 > 사용자에서 대상 사용자를 선택합니다.
  2. 사용자 상세 페이지에서 역할 편집으로 만든 역할을 추가합니다.
  3. 저장을 클릭합니다.
한 사용자에게 여러 역할 부여 가능

여러 역할을 부여하면 모든 역할의 권한이 합쳐져서(union) 적용됩니다. 작은 단위 역할을 여러 개 조합해 운영하는 패턴이 관리에 편합니다.


사용자 정의 역할 예시

역할명부여하는 권한 (요약)적합한 대상
가상머신 관리자ACL.Resource.Compute.VirtualMachine.*, ACL.Resource.Compute.VirtualMachineAllocation.* (ACCESS_WEB_CONSOLE 포함), ACL.Resource.Compute.VirtualCluster.*가상머신 운영 전담자
네트워크 조회자ACL.Resource.Network.{VirtualNetwork,Subnet,NetworkInterface,PublicIp,Vpn}.READ보안·감사 담당
빌링 담당자ACL.Billing.Billing.{READ,UPDATE} + ACL.Pricing.Pricing.READ재무 담당
스토리지 관리자ACL.Resource.Storage.{BlockStorage,BlockStorageSnapshot,BlockStorageSnapshotScheduler,ObjectStorage,ObjectStorageUser,ParallelFileSystem}.*데이터 운영 담당
알림 운영자ACL.Alert.{AlertRule,AlertActionTemplate,AlertEvent}.* + ACL.Metric.Metric.READSRE/온콜 담당

권한 코드 전체 목록

API·CLI·감사 로그에서 사용하는 권한 코드 전체 목록입니다. 포털의 권한 트리 UI와 1:1 대응됩니다.

일반·인프라·결제·가격·메트릭·알림·사용자

General

코드설명
ACL.General.Notice.READ공지사항 조회
ACL.General.Organization.READ조직 정보 조회
ACL.General.Region.READ리전 목록 조회

Infra

코드설명
ACL.Infra.BlockStorageImage.READOS 이미지 목록 조회
ACL.Infra.InstanceType.READ인스턴스 타입 목록 조회
ACL.Infra.Zone.READ가용 영역 목록 조회

Billing / Pricing / Metric

코드설명
ACL.Billing.Billing.READ이용 내역 조회
ACL.Billing.Billing.UPDATE결제 설정 변경
ACL.Pricing.Pricing.READ가격표 조회
ACL.Metric.Metric.READ메트릭 조회

Alert

코드설명
ACL.Alert.AlertRule.{CREATE,READ,UPDATE,DELETE}알림 규칙
ACL.Alert.AlertActionTemplate.{CREATE,READ,UPDATE,DELETE}알림 액션 템플릿
ACL.Alert.AlertEvent.READ알림 이벤트 이력 조회

User

코드설명
ACL.User.ACL.READ권한 목록 조회
ACL.User.User.{READ,UPDATE,DELETE}사용자 관리
ACL.User.UserAudit.READ활동 로그 조회
ACL.User.UserAccessToken.{CREATE,READ,DELETE}액세스 토큰
ACL.User.UserInvite.{CREATE,READ,DELETE}사용자 초대
ACL.User.UserRole.{CREATE,READ,UPDATE,DELETE}사용자 정의 역할
Resource — Compute / Network / Storage

Resource.Compute

코드설명
ACL.Resource.Compute.VirtualMachine.{CREATE,READ,UPDATE,DELETE}가상머신
ACL.Resource.Compute.VirtualMachineAllocation.{CREATE,READ,UPDATE,DELETE}가상머신 실행(시작·중지)
ACL.Resource.Compute.VirtualMachineAllocation.ACCESS_WEB_CONSOLE가상머신 웹 콘솔 접근
ACL.Resource.Compute.VirtualCluster.{CREATE,READ,UPDATE,DELETE}가상 클러스터
ACL.Resource.Compute.VirtualClusterAllocation.{CREATE,READ,UPDATE,DELETE}가상 클러스터 실행

Resource.Network

코드설명
ACL.Resource.Network.VirtualNetwork.{CREATE,READ,UPDATE,DELETE}가상 네트워크
ACL.Resource.Network.Subnet.{CREATE,READ,UPDATE,DELETE}서브넷
ACL.Resource.Network.NetworkInterface.{CREATE,READ,UPDATE,DELETE}네트워크 인터페이스
ACL.Resource.Network.PublicIp.{CREATE,READ,UPDATE,DELETE}공인 IP
ACL.Resource.Network.Vpn.{CREATE,READ,UPDATE,DELETE}VPN
ACL.Resource.Network.LoadBalancer.{CREATE,READ,UPDATE,DELETE}로드 밸런서

Resource.Storage

코드설명
ACL.Resource.Storage.BlockStorage.{CREATE,READ,UPDATE,DELETE}블록 스토리지
ACL.Resource.Storage.BlockStorageSnapshot.{CREATE,READ,UPDATE,DELETE}스냅샷
ACL.Resource.Storage.BlockStorageSnapshotScheduler.{CREATE,READ,UPDATE,DELETE}스냅샷 스케줄러
ACL.Resource.Storage.ObjectStorage.{CREATE,READ,UPDATE,DELETE}오브젝트 스토리지
ACL.Resource.Storage.ObjectStorageUser.{CREATE,READ,UPDATE,DELETE}오브젝트 사용자
ACL.Resource.Storage.ObjectStorageUserGrant.{CREATE,READ,UPDATE,DELETE}오브젝트 사용자 권한
ACL.Resource.Storage.ParallelFileSystem.{CREATE,READ,UPDATE,DELETE}PFS
ACL.Resource.Storage.ParallelFileSystemMember.{CREATE,READ,DELETE}PFS 멤버(가상머신 연결)

Resource (직접)

코드설명
ACL.Resource.OrganizationResourceSummary.READ조직 리소스 요약 조회

자주 묻는 질문

기본 제공 역할(Owner/Contributor/Support/Reader)을 수정할 수 있나요?

수정·삭제 불가입니다. 비슷한 권한이 필요하면 사용자 정의 역할을 새로 만드세요.

삭제하려는 역할이 삭제되지 않습니다.

해당 역할이 사용자에게 할당되어 있으면 삭제할 수 없습니다. 먼저 그 역할을 쓰는 사용자에게서 역할을 제거하거나 다른 역할로 교체한 후 삭제하세요.

권한이 없는 메뉴는 어떻게 표시되나요?

표시되지 않거나 비활성화 상태로 보입니다. 사용자에게는 "접근 권한 없음" 안내가 노출됩니다.


다음 단계