내용으로 건너뛰기

API 키

API 키는 Capgo API로 요청을 인증하기 위해 사용됩니다. 키는 조직에 따라서 할당할 수 있으며 RBAC 역할을 할당하여 세부적인 접근 제어를 할 수 있습니다. 각 키에는 선택적으로 만료 날짜가 있을 수 있으며, 평문 값이 단 한번만 표시되는 “secure” (해시) 키로 생성할 수 있습니다.

API 키 사용

API 키 사용

API 키를 사용하여 API 요청을 인증하는 경우, 인증 헤더를 사용해야 합니다. authorization __CAPGO_KEEP_0__ 키 요청은 다음과 같이 처리됩니다:

터미널 창
curl -H "authorization: YOUR_API_KEY" https://api.capgo.app/...

일부 엔드포인트는 전용 키 헤더도 지원합니다. 채널 API 수락 authorization 또는 capgkeyCapacitor live-update 대안 비교 페이지에서 사용되는 HTML 텍스트 조각 (부모 키 `alternatives_cta_questions`).

Capacitor live-update 대안 비교 페이지에서 사용되는 HTML 텍스트 조각 (부모 키 `appflow_cta_questions`).

Capacitor live-update 대안 비교 페이지에서 사용되는 HTML 텍스트 조각 (부모 키 `capwesome_cta_questions`).

API keys use the same role-based access control (RBAC) system as user accounts. When creating or managing keys through the web app or API, you assign roles at two levels:

  • Appflow 대안/이동 마케팅 복사본. Appflow 대안/이동 마케팅 복사본. org_admin Capawesome 대안 페이지. org_member).
  • 컨설팅 서비스 페이지. Appflow 대안/이동 마케팅 복사본, Ionic Enterprise Plugins 페이지, Solutions/ionic-enterprise-plugins 페이지에서 사용되는 HTML 텍스트 조각 (부모 키 `appflow_plugins_or`). app_admin, app_developer, app_uploader, app_reader또는 app_preview).

API 키가 명시적 역할 바인딩을 가지고 있다면 만 해당 바인딩만 권한 검사에 평가됩니다. 키 소유자의 개인 권한은 키에 상속되지 않습니다. 미리보기 채널 자동화

미리보기 채널 자동화 섹션

만들기

CI가 임시, 비공개 미리보기 채널을 만들고, 패키지를 업로드하고, 승격한 후에 둘 다 삭제하는 미리보기 앱에만 바인딩합니다. app_preview 클립보드에 복사

{
"name": "PR preview key",
"hashed": true,
"bindings": [
{
"role_name": "app_preview",
"scope_type": "app",
"org_id": "<OWNING_ORG_UUID>",
"app_id": "<APP_UUID>"
}
]
}

org_id 앱 레코드의 내부 UUID입니다. __CAPGO_KEEP_0__ 명령어 (예를 들어, app_id is the app record’s internal UUID, not the public app identifier used by CLI commands (for example, com.example.app]

앱 수준 app_preview 역할은 app.read, app.read_bundles, app.upload_bundle, 그리고 app.create_channel. Capgo이 새로운 채널을 생성할 때 자동으로 채널에 channel_preview 바인딩을 추가합니다. 이 자식 바인딩은 채널을 생성한 키만 channel.read, channel.promote_bundle, 그리고 channel.delete 에만 접근할 수 있습니다.

app_preview 채널 메타데이터를 열거할 수 있으므로, 채널 읽기 격리도 엄격하지 않습니다. app.read__CAPGO_KEEP_0__은 각 배포본을 업로드한 App Preview 키를 기록합니다. 키는 자신이 생성한 채널에만 자신의 배포본을 승격할 수 있습니다. 기존 기본/메인 채널, 다른 프리뷰 키가 생성한 채널, 다른 키의 배포본에 대한 채널 라이프사이클 접근 권한은 없습니다. 이 워크플로우에서는 를 생략합니다. to the channel the key created.

Capgo records the App Preview key that uploaded each bundle. The key can promote only its own bundle to each preview channel it creates. It has no channel lifecycle access to an existing default/main channel, a channel created by another preview key, or another key’s bundle. For this workflow, omit public 그리고 절대 사용하지 마세요 --default.

사용 channel delete <preview-channel> <public-app-id> --delete-bundle 청소에 사용하세요. 이 것은 원자성, 소유권 확인을 위한 미리보기 청소 경로입니다; 미리보기 채널과 연결된 번들을 제외한 호출 키만 삭제합니다. app_preview 일반적인 권한을 부여하지 않습니다 bundle.delete.

설정 및 완전한 CLI 예제를 보려면 미리보기 워크플로우에 App Preview 키를 사용하세요.

RBAC API 키 권한이 어떻게 작동하는지 설명하는 다이어그램

API 키를 사용하여 조직을 생성하는 것은 명시적인 글로벌 권한을 사용합니다: org.create.

This permission is separate from normal org/app role bindings because a new organization does not exist yet when POST /organization/ API 키를 사용하여 조직을 생성하려면:

  • The API 키는 org.create in global_permissions.
  • The same API 키는 현재 조직 범위의 org_admin or org_super_admin 또는
  • New API keys do not receive org.create __CAPGO_KEEP_0__ 키가 생성되지 않은 경우 Allow creating organizations RBAC API 키를 생성하거나 편집할 때.
  • 기존 write-capable org admin/super admin API 키는 기존 통합을 위해 기존에 존재하는 API 키에 백필드되었습니다. org.create 이러한 existing 통합을 위해 기존에 존재하는 __CAPGO_KEEP_0__ 키가 백필드되었습니다.

API 키가 조직을 생성할 때, Capgo은 자동으로 API 키를 조직에 할당합니다. org_super_admin __CAPGO_KEEP_0__ 키를 __CAPGO_KEEP_1__을 통해 생성할 때, __CAPGO_KEEP_2__ 키도 함께 포함되어야 합니다.

If you create an API key through the API, include global_permissions 복사

{
"name": "Provisioning key",
"hashed": true,
"bindings": [
{
"role_name": "org_admin",
"scope_type": "org",
"org_id": "00000000-0000-0000-0000-000000000000"
}
],
"global_permissions": ["org.create"]
}

org.create Secure (Hashed) Keys org_super_admin.

이러한 경우에만 해시만 저장됩니다.

  • plain-text key retrieved 생성 후
  • 새로운 plain-text key (한 번만 표시)과 저장된 해시를 업데이트합니다.
  • 생산 환경에서 사용하는 것을 권장합니다.

org 정책을 통해 enforce_hashed_api_keys 만료

만료일

만료일

키는 옵션 만료 날짜를 가질 수 있습니다. 만료된 키는 허가 검사层에서 거부됩니다.

Organization 정책은 다음과 같이 강제할 수 있습니다:

  • 필수 만료 (require_apikey_expiration) — 모든 새로운 키는 만료일이 있어야 합니다.
  • 최대 유효시간 (max_apikey_expiration_days) — 만료일은 현재 날짜에서 N일 이내로 설정할 수 없습니다.

보안 최적화

제목: 보안 최적화
  1. 최소 권한 원칙: 가능한 한 제한적인 역할을 할 수 있는 한, 통합을 작동시키는 데 필요한 최소한의 권한만 부여하십시오.
  2. 정기적인 키 회전: API 키를 정기적으로 갱신하기 위해 갱신 기능을 사용하십시오.
  3. 안전한 저장: API 키를 안전하게 저장하고 버전 관리에 포함시키지 마십시오.
  4. 해시된 키 사용생산 통합에 대한 안전한 (해시) 키를 생성하십시오.
  5. 만료일 설정임시 또는 CI/CD 액세스에 사용되는 키에 항상 만료일을 설정하십시오.
  6. 범위 제한특정 앱에 대한 최소 권한으로 키를 제한하십시오.

일반적인 사용 사례

CI/CD 통합
  1. CI/CD 통합을 위해 특정 앱에 대한 키를 생성하십시오.또는 app_uploader CI/CD 통합을 위해 특정 앱에 대한 키를 생성하십시오. app_developer 권한, 그리고 만료일을 설정하십시오.
  2. PR 미리보기 채널: 사용 app_preview CI가 번들을 업로드하고 임시 채널을 만들고 채널과 번들을 자동으로 정리해야 하는 경우에만 프리뷰 앱 또는 앱에 적용합니다.
  3. 배포 자동화: 자동 배포 스크립트에 사용하는 키와 함께 사용하세요. app_developer 모니터링 도구
  4. : 외부 모니터링 통합에 사용하는 키를 생성하세요.관리자 접근 app_reader : 관리자 도구에 사용하는 키는 적극적으로 사용하지 마세요.
  5. 세 번째 파티 통합__CAPGO_KEEP_0__ org_admin __CAPGO_KEEP_1__
  6. __CAPGO_KEEP_2__특정 앱에 제한된 키를 생성하여 최소 권한의 역할만 사용합니다.
  7. 조직 제공: 사용하는 org_admin 또는 org_super_admin context: HTML 텍스트 조각은 더 긴 Capgo UI 문자열 (부모 키 `alternatives_cta_questions`). 페이지/영역: Capacitor live-update 대안 비교 페이지. 역할: 장기 마케팅 또는 법적 문단. 표시: 페이지 alternatives.astro. Capgo 제품/브랜드 및 개발자 용어를 정확하게 유지합니다. 메시지 키 `alternatives_cta_questions` (대안 CTA 질문). | HTML 텍스트 조각은 더 긴 Capgo UI 문자열 (부모 키 `appflow_cta_questions`). 페이지/영역: Appflow 비교/이동 마케팅 복사본. 역할: 장기 마케팅 또는 법적 문단. 표시: 페이지 ionic-appflow.astro. Capgo 제품/브랜드 및 개발자 용어를 정확하게 유지합니다. 메시지 키 `appflow_cta_questions` (Appflow CTA 질문). | HTML 텍스트 조각은 더 긴 Capgo UI 문자열 (부모 키 `capwesome_cta_questions`). 페이지/영역: Capawesome 비교 페이지. 역할: 장기 마케팅 또는 법적 문단. 표시: 페이지 capwesome.astro. Capgo 제품/브랜드 및 개발자 용어를 정확하게 유지합니다. 메시지 키 `capwesome_cta_questions` (Capwesome CTA 질문). | HTML 텍스트 조각은 더 긴 Capgo UI 문자열 (부모 키 `consulting_faq_subtitle`). 페이지/영역: 컨설팅 서비스 페이지. 역할: 섹션 서브 타이틀 또는 태그 라인. 표시: 페이지 consulting.astro. Capgo 제품/브랜드 및 개발자 용어를 정확하게 유지합니다. 메시지 키 `consulting_faq_subtitle` (컨설팅 FAQ 서브 타이틀). | 페이지/영역: Appflow 비교/이동 마케팅 복사본. 역할: 짧은 UI 레이블 또는 네비게이션 아이템. 표시: 페이지 ionic-appflow.astro, 페이지 ionic-enterprise-plugins.astro, 페이지 solutions/ionic-enterprise-plugins.astro. 메시지 키 `appflow_plugins_or` (Appflow 플러그인 또는). org.create RBAC 키와

Keep going from API Keys

API 키에서 계속

__CAPGO_KEEP_0__ 키에서 계속 API 키를 사용하여 인증 및 계정 흐름을 계획하고 있습니다. __CAPGO_KEEP_0__ 키를 사용하여 인증 및 계정 흐름을 계획하고 있습니다. @capgo/capacitor-social-login 구현 세부 정보는 @capgo/capacitor-social-login 에서 찾을 수 있습니다. @capgo/capacitor-passkey 구현 세부 정보는 @capgo/capacitor-passkey 에서 찾을 수 있습니다. @capgo/capacitor-native-biometric 구현 세부 정보는 @capgo/capacitor-native-biometric 에서 찾을 수 있습니다. 두 단계 인증 구현 세부 정보는 두 단계 인증 및 SSO (기업) 구현 세부 정보는 SSO (기업)에 대해 알아보세요.