내용으로 건너뛰기

접근 제어 참조

Capgo uses __CAPGO_KEEP_0__ uses 각 팀원에게 할 수 있는 일을 관리하는 데 도움이 됩니다. 역할은 전체 조직에서 단일 번들까지의 범위에 따라 조직화됩니다. 범위 조직 관리에 대한 시각적인_walkthrough를 보려면

조직 역할 범위.


범위

적용 대상예시조직
역할 범위__CAPGO_KEEP_0____CAPGO_KEEP_0__
__CAPGO_KEEP_0____CAPGO_KEEP_0____CAPGO_KEEP_0__
__CAPGO_KEEP_0____CAPGO_KEEP_0____CAPGO_KEEP_0__ staging __CAPGO_KEEP_0__
__CAPGO_KEEP_0____CAPGO_KEEP_0____CAPGO_KEEP_0__

회원은 한 개의 역할을 한 개의 범위 목표에 할당할 수 있습니다. 예를 들어, 한 개의 조직 역할, App A의 역할, App B의 다른 역할. 조직 역할


역할

내부 이름설명슈퍼 어드민
소유권과 유사. 조직을 삭제하고 청구를 관리하며 앱을 이전할 수 있는 전체 제어권. 조직 생성자에게 자동으로 부여됩니다.org_super_admin관리자
역할은 초대 시 할당됩니다. 조직 전체에 대한 접근 권한을 부여합니다.org_admin전체 관리 — 회원, 앱, 채널 관리. 조직 삭제, 청구 관리 업데이트, 앱 이전, Super Admin으로 승격할 수 없습니다.
청구 관리자org_billing_admin청구 전용 접근: 청구 정보, 청구서, 청구 감사 로그만 볼 수 있습니다. 앱 또는 회원에 대한 접근이 없습니다.
회원org_member조직 및 모든 앱에 대한 읽기 전용 접근

조직 권한 매트릭스

권한
설명Super Admin관리자청구 관리자권한 매트릭스회원
org.read조직을 살펴보세요
org.update_settings조직 이름, 로고, 관리 이메일 편집
org.delete조직을 영구 삭제
org.read_members회원 목록을 살펴보세요
org.invite_user새로운 회원 초대
org.update_user_roles회원 역할 변경 (관리자로 승격하는 것은 역할 계층 구조로 차단됩니다)
org.read_billing청구 정보 및 현재 플랜 보기
org.update_billing결제 방법 및 플랜 업데이트
org.read_invoices청구서 보기
org.read_audit조직 활동 로그 보기
org.read_billing_audit청구 관련 감사 로그 보기

__CAPGO_KEEP_0__

역할__CAPGO_KEEP_0__설명
앱 관리자app_admin한 앱에 대한 전체 제어 — 채널, 장치, 사용자 역할. 앱 삭제 또는 전송은 조직 수준의 작업입니다.
앱 개발자app_developer번들 업로드, 장치 관리, 원시 빌드 트리거, 채널 설정 업데이트. 삭제, 앱 설정 변경, 채널 생성은 허용되지 않습니다.
앱 업로더app_uploader읽기 권한 + 새로운 번들 버전 업로드
앱 리더app_reader읽기 전용 — 통계, 번들, 채널, 로그, 장치
권한설명앱 관리자앱 개발자앱 업로더앱 리더
app.read앱 상세 정보, 통계 및 메타데이터를 보려면
app.update_settings앱 설정을 편집하려면
app.read_bundles업로드 한 배포 목록을 보려면
app.upload_bundle새 버전의 배포 업로드
app.create_channel새 채널 만들기
app.read_channels채널 보기
app.read_logs업데이트 전송 로그 보기
app.manage_devices장치Assign, Override, 또는 Unlink
app.read_devices장치 목록 보기
app.build_native자연 클라우드 빌드 트리거
app.read_audit앱 수준 활동 로그 보기
app.update_user_roles앱 범위 역할 Assign 관리
bundle.delete배달 삭제

단일 채널에 제한됩니다. 특정 릴리스 채널에 대한 목표 접근 권한을 제공하기 위해 유용합니다.

역할내부 이름설명
채널 관리자channel_admin채널 설정, 배포/롤백 패키지, 강제 장치 관리와 같은 채널 1개에 대한 전체 제어.
채널 뷰어channel_reader읽기 전용 — 현재 배포, 기록, 강제 장치, 감사 로그.
권한권한 설명채널 관리자채널 관찰자
channel.read채널과 현재 배포본을 확인하세요
channel.update_settings채널 설정 편집 (플랫폼 토글, 업데이트 정책…)
channel.delete채널 삭제
channel.read_history배포본 assignments 기록 보기
channel.promote_bundle채널에 현재 배포본 설정
channel.rollback_bundle이전 배포본으로 롤백
channel.manage_forced_devices특정 장치에 이 채널 강제
channel.read_forced_devices강제 장치 목록 보기
channel.read_audit채널 활동 로그 보기

배포본 역할

Bundle 역할

단일 버전으로 제한됩니다. 대부분의 팀은 앱 수준 역할을 사용합니다.

내부 이름설명Bundle 관리자
특정 버전의 Bundle을 읽고, 업데이트, 삭제할 수 있습니다.bundle_adminvia
Bundle Viewerbundle_reader특정 번들에 대한 읽기 전용 접근.

채널 권한 오버라이드 (대시보드)

채널 권한 오버라이드 (대시보드) 섹션 제목

대시보드에서 채널 접근 권한은 기본적으로 사용자의 앱 역할에 의해 결정됩니다. 더 세부적인 제어가 필요하다면, 사용자 또는 그룹별로 채널 권한을 오버라이드할 수 있습니다. 앱 역할을 변경하지 않고.

오버라이드 설정은 앱의 Access 탭에서 채널 권한 버튼(보호기 아이콘)을 클릭하여 사용자 옆에 있습니다. 자세한 설명은 Organization — Overriding channel permissions 을 참조하세요.

__CAPGO_KEEP_0__

__CAPGO_KEEP_1__
__CAPGO_KEEP_0____CAPGO_KEEP_2____CAPGO_KEEP_3__
__CAPGO_KEEP_0____CAPGO_KEEP_4____CAPGO_KEEP_5__
__CAPGO_KEEP_6____CAPGO_KEEP_7____CAPGO_KEEP_8__
__CAPGO_KEEP_9__채널에서 활성화된 번들 설정 또는 변경앱 역할에서 상속

각 권한은 다음과 같이 설정할 수 있습니다:

  • 기본 — 앱 역할에서 상속 (기본)
  • 허용 — 앱 역할에 관계없이 명시적으로 허용
  • 거부 — 앱 역할에 관계없이 명시적으로 거부

예를 들어, App Reader에게 채널에서 번들을 연관시킬 수 있는 권한을 부여하여 App Developer로 승격하지 않도록 할 수 있습니다. staging 역할 계층


__CAPGO_KEEP_0__

역할 계층

역할은 계층 구조를 형성합니다. 부모 역할은 자식 역할의 모든 권한을 상속합니다. 즉, org_admin 이 할당된 모든 권한을 가집니다. 이 권한은 다시 app_admin 에게도 적용됩니다. channel_admin 복사

Super Admin (org_super_admin)
└── Admin (org_admin)
└── App Admin (app_admin)
├── App Developer (app_developer)
│ └── App Uploader (app_uploader)
│ └── App Reader (app_reader)
├── Bundle Admin (bundle_admin)
│ └── Bundle Viewer (bundle_reader)
└── Channel Admin (channel_admin)
└── Channel Viewer (channel_reader)

기관 수준의

  • 에게 할당된 모든 권한을 가집니다. Copy to clipboard 앱 관리자 기관 내 모든 앱에서 앱 관리자가 할 수 있습니다.
  • 특정 앱의 앱 관리자는 특정 앱의 모든 채널에서 채널 관리자가 할 수 있는 것과 같습니다. 앱 개발자는 앱 업로더가 할 수 있는 것과 더 많은 것을 할 수 있습니다. 앱 업로더는 앱 개발자가 할 수 있는 것과 더 많은 것을 할 수 있습니다. 앱 개발자는 앱 업로더가 할 수 있는 것과 더 많은 것을 할 수 있습니다.
  • 앱 개발자는 앱 업로더가 할 수 있는 것과 더 많은 것을 할 수 있습니다. 앱 개발자는 앱 업로더가 할 수 있는 것과 더 많은 것을 할 수 있습니다. 앱 개발자는 앱 업로더가 할 수 있는 것과 더 많은 것을 할 수 있습니다. 앱 개발자는 앱 업로더가 할 수 있는 것과 더 많은 것을 할 수 있습니다. 앱 개발자는 앱 업로더가 할 수 있는 것과 더 많은 것을 할 수 있습니다.

__CAPGO_KEEP_0__ __CAPGO_KEEP_1__ __CAPGO_KEEP_2__ channel_admin __CAPGO_KEEP_3__


아래로 조직 수준의 권한을 얻지 못하고, 그들이 또한 앱 수준의 역할을 보유하고 있는 경우에도.

  • 사용자별로 역할을 assign하는 대신, 그룹을 만들고 그룹에 역할을 assign할 수 있습니다. 그룹의 모든 멤버는 자동으로 그 역할을 inherit합니다. 한 개의 조직 — 여러 개의 조직을跨越할 수 없습니다.
  • 그룹은 org, app, channel, 또는 bundle의任意 범위에서 역할 할당을 보유할 수 있습니다. 예를 들어, 그룹은 App A에 App Developer 역할을 할당하고 App B의 채널에 Channel Admin 역할을 할당할 수 있습니다. 사용자의 권한이 평가될 때, 그들의 그룹 구성원십은 투명하게 해결됩니다. 그들의 그룹 중 하나가 필요한 권한을 부여하면 접근이 허용됩니다.사용자는 __CAPGO_KEEP_0__ 그룹은 org, app, channel, 또는 bundle의任意 범위에서 역할 할당을 보유할 수 있습니다. 예를 들어, 그룹은 App A에 App Developer 역할을 할당하고 App B의 채널에 Channel Admin 역할을 할당할 수 있습니다. 사용자의 권한이 평가될 때, 그들의 그룹 구성원십은 투명하게 해결됩니다. 그들의 그룹 중 하나가 필요한 권한을 부여하면 접근이 허용됩니다. 사용자는 staging __CAPGO_KEEP_0__
  • 사용자는 여러 개의 그룹에 속할 수 있습니다.
  • __CAPGO_KEEP_0__ 다중 그룹, 모든 그룹의 권한이 누적됩니다.
  • 그룹 기반 권한은 사용자 주체 — API 키는 그룹 역할을 상속하지 않습니다.
사례그룹이 없는 경우그룹이 있는 경우
5명의 QA 엔지니어가 3개의 앱에 개발자 접근 권한이 필요합니다.15개의 개별 역할 바인딩1 그룹 + 3 역할 바인딩
QA 팀에 누군가가 합류합니다3 역할 바인딩을 수동으로 추가합니다그룹에 추가합니다
QA 팀에 누군가가 떠나면3 역할 바인딩을 수동으로 제거합니다그룹에서 제거합니다

API를 통해 그룹 관리

API를 통해 그룹 관리

모든 그룹 엔드포인트는 인증이 필요하고 /private/groups.

그룹 목록

그룹 목록
터미널 창
curl -X GET "https://api.capgo.app/private/groups/<ORG_ID>" \
-H "authorization: <API_KEY>"

필요한 org.read_members 권한이 필요합니다.

그룹 만들기

그룹 만들기 제목
터미널 창
curl -X POST "https://api.capgo.app/private/groups/<ORG_ID>" \
-H "authorization: <API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"name": "QA Team",
"description": "Quality assurance engineers"
}'

필요한 org.update_user_roles 권한이 필요합니다. (슈퍼 관리자 또는 관리자).

그룹 업데이트

그룹 업데이트
터미널 창
curl -X PUT "https://api.capgo.app/private/groups/<GROUP_ID>" \
-H "authorization: <API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"name": "QA Team",
"description": "Updated description"
}'

그룹 삭제

그룹 삭제
터미널 창
curl -X DELETE "https://api.capgo.app/private/groups/<GROUP_ID>" \
-H "authorization: <API_KEY>"

그룹 삭제 시 그룹의 역할 바인딩도 함께 삭제됩니다. 조직의 멤버는 삭제되지 않습니다.

그룹 멤버 목록

그룹 멤버 목록
터미널 창
curl -X GET "https://api.capgo.app/private/groups/<GROUP_ID>/members" \
-H "authorization: <API_KEY>"

그룹에 멤버 추가

그룹에 멤버 추가
터미널 창
curl -X POST "https://api.capgo.app/private/groups/<GROUP_ID>/members" \
-H "authorization: <API_KEY>" \
-H "Content-Type: application/json" \
-d '{ "user_id": "<USER_UUID>" }'

사용자는 이미 조직의 멤버여야 합니다. 기존 멤버를 추가하는 것은 무효입니다.

그룹에서 멤버 제거

그룹에서 멤버 제거
터미널 창
curl -X DELETE "https://api.capgo.app/private/groups/<GROUP_ID>/members/<USER_UUID>" \
-H "authorization: <API_KEY>"

멤버 목록

터미널 창
클립보드에 복사
curl -X GET "https://api.capgo.app/organization/members" \
-H "authorization: <API_KEY>" \
-H "Content-Type: application/json" \
-d '{ "orgId": "<ORG_ID>" }'

클립보드에 복사

[
{
"uid": "user-uuid",
"email": "alice@example.com",
"image_url": "https://...",
"role": "org_admin",
"is_tmp": false
}
]
터미널 창
curl -X POST "https://api.capgo.app/organization/members" \
-H "authorization: <API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"orgId": "<ORG_ID>",
"email": "bob@example.com",
"invite_type": "org_admin"
}'

허용된 값 invite_type:

assign된 역할
org_super_admin슈퍼 관리자
org_admin관리자
org_billing_adminBilling 매니저
org_member회원
터미널 창
curl -X DELETE "https://api.capgo.app/organization/members" \
-H "authorization: <API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"orgId": "<ORG_ID>",
"email": "bob@example.com"
}'

터미널 창
npx @capgo/cli organization list --apikey <API_KEY>
터미널 창
npx @capgo/cli organization members <ORG_ID> --apikey <API_KEY>

사용자 지정 역할

사용자 지정 역할

__CAPGO_KEEP_0__ 내장 역할은 대부분의 팀 구조를 커버합니다. 사용자 지정 역할 생성은 우리의 로드맵에 있습니다 — 이 기능이 팀에 필요하다면, 우리에 연락하세요.이 기능을 사용하는 경우는 직접 우선순위를 결정할 것입니다.