iOS 설정 및 백엔드 확인
설치 단계와 이 플러그인의 전체 마크다운 가이드를 포함한 설정 지시문을 복사할 수 있도록 해줍니다.
iOS native 시스템 사용
iOS native 시스템 사용iOS에서 이 플러그인은 애플 앱 확인 framework에서 DeviceCheck framework.
Requirements
요구 사항- iOS 14 이상
- 실제 인증 흐름을 위해 물리 장치가 권장됩니다.
- App Attest 기능이 활성화된 Xcode 대상
Xcode 설정
Section titled “Xcode 설정”- Xcode에서 iOS 앱 대상 열기.
- 가기 인증 및 기능.
- Click + 기능 추가 그리고 추가하십시오 앱 확인.
앱 확인 자체에는 사용자 정의 iOS 권한이 필요하지 않습니다. Info.plist 클라이언트 흐름
클라이언트 흐름
클립보드 복사import { AppAttest } from '@capgo/capacitor-app-attest';
const { keyId } = await AppAttest.prepare();
const attestation = await AppAttest.createAttestation({ keyId, challenge: 'backend-registration-challenge',});
const assertion = await AppAttest.createAssertion({ keyId, payload: 'backend-request-payload',});그리고 attestation.token and assertion.token 백엔드 워크플로우 (iOS)
등록 ('
등록 ('등록 ('createAttestation)
등록 (createAttestation) 섹션- 백엔드가 일회용
challenge. - 앱이 호출합니다.
createAttestation({ keyId, challenge }). - 백엔드가 앱 Attest attestation을 확인합니다.:
- 인증서 체인은 유효하고 Apple App Attest에-anchor됩니다.
- 앱 식별자가 앱 (
bundleId팀) clientDataHash일치합니다.SHA256(challenge)
- 스토어 기기 키 상태 (
keyId공개 키, 및 검증자 메타데이터).
요청 보호 (createAssertion)
요청 보호 (createAssertion) 섹션- 백엔드가 일회용
payload(또는 canonical 요청 해시 입력). - 앱이
createAssertion({ keyId, payload }). - 백엔드가 이전에 저장된 키 자료와 함께 서명 확인.
- 재생 방지 및 nonce TTL 확인.
iOS 스키마
iOS 스키마sequenceDiagram participant App as iOS App participant Plugin as AppAttest plugin participant Apple as Apple App Attest participant BE as Backend
BE->>App: one-time challenge App->>Plugin: prepare() Plugin->>Apple: generateKey() Apple-->>Plugin: keyId
App->>Plugin: createAttestation(keyId, challenge) Plugin->>Apple: attestKey(keyId, SHA256(challenge)) Apple-->>Plugin: attestation token Plugin-->>App: token + platform + format + keyId App->>BE: token + challenge + keyId BE->>BE: verify Apple attestation rules
BE->>App: one-time payload App->>Plugin: createAssertion(keyId, payload) Plugin->>Apple: generateAssertion(keyId, SHA256(payload)) Apple-->>Plugin: assertion token Plugin-->>App: token + platform + format + keyId App->>BE: token + payload + keyId BE->>BE: verify signature + replay policy최소 백엔드 페이로드 계약
등록:Registration:
{ "platform": "ios", "format": "apple-app-attest", "keyId": "string", "challenge": "string", "token": "string"}확인:
{ "platform": "ios", "format": "apple-app-attest", "keyId": "string", "payload": "string", "token": "string"}iOS 설정 및 백엔드 검증에서 계속
iOS 설정 및 백엔드 검증에서 계속iOS 설정 및 백엔드 검증을 사용 중이라면 iOS 설정 및 백엔드 검증을 사용하여 보안 및 규정 준수 계획을 수립하고 Using @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-app-attest @capgo/capacitor-애티스트 사용 native 기능을 위한 @capgo/capacitor-app-attest를 사용하세요. 암호화 규정 준수 규정 준수 구현 세부 사항에 대한 Compliance에 대해 Capgo 보안 스캐너 Capgo 보안 스캐너의 제품 워크플로에 대해 Capgo 보안 Capgo 보안의 제품 워크플로에 대해