역할 기반 접근 제어 (RBAC)
CrewAI AMP의 RBAC는 두 가지 계층을 통해 안전하고 확장 가능한 접근 관리를 제공합니다:
- 기능 권한 — 플랫폼 전반에서 각 역할이 수행할 수 있는 작업을 제어합니다 (관리, 읽기 또는 접근 불가)
- 엔티티 수준 권한 — 개별 자동화, 환경 변수, LLM 연결, Git 저장소에 대한 세분화된 접근 제어
사용자와 역할
섹션 제목: “사용자와 역할”CrewAI 워크스페이스의 각 구성원에게는 역할이 할당되며, 이를 통해 다양한 기능에 대한 접근 범위가 결정됩니다.
가능한 작업:
- 사전 정의된 역할 사용 (Owner, Member)
- 특정 권한에 맞춘 커스텀 역할 생성
- 설정 패널에서 언제든지 역할 할당
설정 위치: Settings → Roles
- Roles 설정 열기
CrewAI AMP에서 Settings → Roles로 이동합니다.
- 역할 유형 선택
사전 정의된 역할(Owner, Member)을 사용하거나 Create role을 클릭하여 커스텀 역할을 만듭니다.
- 멤버에 할당
사용자를 선택하고 역할을 할당합니다. 언제든지 변경할 수 있습니다.
사전 정의된 역할
섹션 제목: “사전 정의된 역할”| 역할 | 설명 |
|---|---|
| Owner | 모든 기능 및 설정에 대한 전체 접근 권한. 제한할 수 없습니다. |
| Member | 대부분의 기능에 대한 읽기 접근, 환경 변수, LLM 연결, Studio 프로젝트에 대한 관리 접근. 조직 설정이나 기본 설정은 수정할 수 없습니다. |
구성 요약
섹션 제목: “구성 요약”| 영역 | 설정 위치 | 옵션 |
|---|---|---|
| 사용자 & 역할 | Settings → Roles | 사전 정의: Owner, Member; 커스텀 역할 |
| 자동화 가시성 | Automation → Settings → Visibility | Private; 사용자/역할 화이트리스트 |
기능 권한 매트릭스
섹션 제목: “기능 권한 매트릭스”각 역할에는 기능 영역별 권한 수준이 있습니다. 세 가지 수준은 다음과 같습니다:
- Manage — 전체 읽기/쓰기 접근 (생성, 편집, 삭제)
- Read — 읽기 전용 접근
- No access — 기능이 숨겨지거나 접근 불가
| 기능 | Owner | Member (기본값) | 사용 가능한 수준 | 설명 |
|---|---|---|---|---|
usage_dashboards | Manage | Read | Manage / Read / No access | 사용 메트릭 및 분석 보기 |
crews_dashboards | Manage | Read | Manage / Read / No access | 배포 대시보드 보기, 자동화 세부 정보 접근 |
invitations | Manage | Read | Manage / Read / No access | 조직에 새 멤버 초대 |
training_ui | Manage | Read | Manage / Read / No access | 훈련/파인튜닝 인터페이스 접근 |
tools | Manage | Read | Manage / Read / No access | 도구 생성 및 관리 |
agents | Manage | Read | Manage / Read / No access | 에이전트 생성 및 관리 |
environment_variables | Manage | Manage | Manage / No access | 환경 변수 생성 및 관리 |
llm_connections | Manage | Manage | Manage / No access | LLM 제공자 연결 구성 |
default_settings | Manage | No access | Manage / No access | 조직 전체 기본 설정 수정 |
organization_settings | Manage | No access | Manage / No access | 결제, 플랜 및 조직 구성 관리 |
studio_projects | Manage | Manage | Manage / No access | Studio에서 프로젝트 생성 및 편집 |
GitHub 또는 Zip에서 배포
섹션 제목: “GitHub 또는 Zip에서 배포”가장 흔한 RBAC 질문 중 하나: “팀원이 배포하려면 어떤 권한이 필요한가요?”
GitHub에서 배포
섹션 제목: “GitHub에서 배포”GitHub 저장소에서 자동화를 배포하려면 사용자에게 다음이 필요합니다:
crews_dashboards: 최소Read— 배포가 생성되는 자동화 대시보드에 접근하는 데 필요- Git 저장소 접근 (Git 저장소에 대한 엔티티 수준 RBAC가 활성화된 경우): 사용자의 역할에 엔티티 수준 권한을 통해 특정 Git 저장소에 대한 접근이 부여되어야 함
studio_projects:Manage— 배포 전에 Studio에서 crew를 빌드하는 경우
Zip에서 배포
섹션 제목: “Zip에서 배포”Zip 파일 업로드로 자동화를 배포하려면 사용자에게 다음이 필요합니다:
crews_dashboards: 최소Read— 자동화 대시보드에 접근하는 데 필요- Zip 배포 활성화: 조직이 조직 설정에서 Zip 배포를 비활성화하지 않아야 함
빠른 참조: 배포에 필요한 최소 권한
섹션 제목: “빠른 참조: 배포에 필요한 최소 권한”| 작업 | 필요한 기능 권한 | 추가 요구사항 |
|---|---|---|
| GitHub에서 배포 | crews_dashboards: Read | Git 저장소 엔티티 접근 (Git RBAC 활성화 시) |
| Zip에서 배포 | crews_dashboards: Read | 조직 수준에서 Zip 배포가 활성화되어야 함 |
| Studio에서 빌드 | studio_projects: Manage | — |
| LLM 키 구성 | llm_connections: Manage | — |
| 환경 변수 설정 | environment_variables: Manage | 엔티티 수준 접근 (엔티티 RBAC 활성화 시) |
자동화 수준 접근 제어 (엔티티 권한)
섹션 제목: “자동화 수준 접근 제어 (엔티티 권한)”조직 전체 역할 외에도, CrewAI는 개별 리소스에 대한 접근을 제한하는 세분화된 엔티티 수준 권한을 지원합니다.
자동화 가시성
섹션 제목: “자동화 가시성”자동화는 사용자 또는 역할별로 접근을 제한하는 가시성 설정을 지원합니다. 다음과 같은 경우에 유용합니다:
- 민감하거나 실험적인 자동화를 비공개로 유지
- 대규모 팀이나 외부 협업자의 가시성 관리
- 격리된 컨텍스트에서 자동화 테스트
배포를 비공개로 구성할 수 있으며, 이 경우 화이트리스트에 포함된 사용자와 역할만 상호작용할 수 있습니다.
설정 위치: Automation → Settings → Visibility 탭
- Visibility 탭 열기
Automation → Settings → Visibility로 이동합니다.
- 가시성 설정
접근을 제한하려면 Private를 선택합니다. 조직 Owner는 항상 접근 권한을 유지합니다.
- 접근 허용 대상 추가
보기, 실행, 로그/메트릭/설정 접근이 허용된 특정 사용자와 역할을 추가합니다.
- 저장 및 확인
변경 사항을 저장한 후, 화이트리스트에 없는 사용자가 자동화를 보거나 실행할 수 없는지 확인합니다.
Private 가시성: 접근 결과
섹션 제목: “Private 가시성: 접근 결과”| 동작 | Owner | 화이트리스트 사용자/역할 | 비포함 |
|---|---|---|---|
| 자동화 보기 | ✓ | ✓ | ✗ |
| 자동화/API 실행 | ✓ | ✓ | ✗ |
| 로그/메트릭/설정 접근 | ✓ | ✓ | ✗ |
배포 권한 유형
섹션 제목: “배포 권한 유형”특정 자동화에 엔티티 수준 접근을 부여할 때 다음 권한 유형을 할당할 수 있습니다:
| 권한 | 허용 범위 |
|---|---|
run | 자동화 실행 및 API 사용 |
traces | 실행 트레이스 및 로그 보기 |
manage_settings | 자동화 편집, 재배포, 롤백 또는 삭제 |
human_in_the_loop | HITL(human-in-the-loop) 요청에 응답 |
full_access | 위의 모든 권한 |
기타 리소스에 대한 엔티티 수준 RBAC
섹션 제목: “기타 리소스에 대한 엔티티 수준 RBAC”엔티티 수준 RBAC가 활성화되면 다음 리소스에 대한 접근도 사용자 또는 역할별로 제어할 수 있습니다:
| 리소스 | 제어 방식 | 설명 |
|---|---|---|
| 환경 변수 | 엔티티 RBAC 기능 플래그 | 특정 환경 변수를 보거나 관리할 수 있는 역할/사용자 제한 |
| LLM 연결 | 엔티티 RBAC 기능 플래그 | 특정 LLM 제공자 구성에 대한 접근 제한 |
| Git 저장소 | Git 저장소 RBAC 조직 설정 | 특정 연결된 저장소에 접근할 수 있는 역할/사용자 제한 |
일반적인 역할 패턴
섹션 제목: “일반적인 역할 패턴”CrewAI는 Owner와 Member 역할을 기본 제공하지만, 대부분의 팀은 커스텀 역할을 만들어 활용합니다. 일반적인 패턴은 다음과 같습니다:
Developer 역할
섹션 제목: “Developer 역할”자동화를 빌드하고 배포하지만 조직 설정을 관리하지 않는 팀원을 위한 역할입니다.
| 기능 | 권한 |
|---|---|
usage_dashboards | Read |
crews_dashboards | Manage |
invitations | Read |
training_ui | Read |
tools | Manage |
agents | Manage |
environment_variables | Manage |
llm_connections | Manage |
default_settings | No access |
organization_settings | No access |
studio_projects | Manage |
Viewer / Stakeholder 역할
섹션 제목: “Viewer / Stakeholder 역할”자동화를 모니터링하고 결과를 확인해야 하는 비기술 이해관계자를 위한 역할입니다.
| 기능 | 권한 |
|---|---|
usage_dashboards | Read |
crews_dashboards | Read |
invitations | No access |
training_ui | Read |
tools | Read |
agents | Read |
environment_variables | No access |
llm_connections | No access |
default_settings | No access |
organization_settings | No access |
studio_projects | No access |
Ops / Platform Admin 역할
섹션 제목: “Ops / Platform Admin 역할”인프라 설정을 관리하지만 에이전트를 빌드하지 않을 수 있는 플랫폼 운영자를 위한 역할입니다.
| 기능 | 권한 |
|---|---|
usage_dashboards | Manage |
crews_dashboards | Manage |
invitations | Manage |
training_ui | Read |
tools | Read |
agents | Read |
environment_variables | Manage |
llm_connections | Manage |
default_settings | Manage |
organization_settings | Read |
studio_projects | No access |
도움이 필요하신가요?
RBAC 관련 질문은 지원팀에 문의해 주세요.