자동화와 권한 위임
출시 작업 가운데 계정 소유자만 할 수 있는 일, 역할을 받은 사람에게 맡길 일, API 키 · 서비스 계정으로 CI 가 할 수 있는 일을 App Store 와 Google Play 기준으로 나눕니다.
목차
스토어 출시 작업은 작업마다 할 수 있는 사람이 다릅니다. 가입 · 결제 · 계약처럼 계정 소유자만 할 수 있는 일이 있고, 역할을 받은 사람이 할 수 있는 일과 API 키나 서비스 계정을 받은 CI 가 할 수 있는 일이 있습니다. 이 페이지는 App Store 와 Google Play 를 기준으로 그 경계를 정리합니다. 출시를 CI 로 자동화하거나 다른 사람 · 도구에 맡기기 전에 읽으세요. Microsoft Store 는 다루지 않습니다.
주의
역할 이름 · 권한 · API 가 지원하는 범위는 바뀝니다. 이 페이지의 내용은 「마지막 확인」 날짜 기준이고, 다르면 공식 문서가 우선합니다. 콘솔 화면은 로그인이 필요해 직접 확인하지 못했으므로 메뉴 이름은 공식 도움말의 표기를 따르고, 한국어 표기를 확인하지 못한 이름은 영문 그대로 씁니다.
준비물
- 개발자 계정 — 개발자 계정에서 가입을 마친 상태입니다. 이 페이지에서 「계정 소유자」는 Apple 의 Account Holder 와 Google Play 의 계정 소유자(account owner)를 말합니다.
- 계정 소유자의 2단계 인증 수단 — Apple 의 인증 코드는 신뢰하는 기기에 표시되거나 신뢰하는 전화번호로 옵니다. 계정 소유자가 직접 받을 수 있어야 합니다.
- (CI 를 쓸 때) 비밀 값을 보관할 곳 — App Store Connect API 키 파일(
.p8)과 Google 서비스 계정 키는 CI 의 비밀 저장소에 둡니다. 저장소의 파일 · 문서 · 이슈에 적지 않습니다.
누가 무엇을 할 수 있나
(2026-10-21 확인)
| 작업 | App Store (App Store Connect) | Google Play (Play Console) |
|---|---|---|
| 가입 · 결제 · 계약 | 계정 소유자. 조직을 등록하는 사람은 조직을 계약에 구속할 법적 권한이 있어야 하고, 계약 서명은 Account Holder 가 합니다 | 계정 소유자. 유료 앱을 판매할 결제 프로필을 연결하고 「Payments settings」 페이지를 고칠 수 있는 사람은 계정 소유자뿐입니다 |
| API 사용 시작 | Account Holder 가 API 접근을 요청하고, 승인되면 Account Holder 나 Admin 이 팀 키를 만듭니다 | Google Cloud 프로젝트에서 Google Play Developer API 를 켜고 서비스 계정을 만든 뒤, Play Console 에 그 이메일을 사용자로 초대합니다 |
| 앱 등록 | App Store Connect 웹사이트에서 Account Holder · Admin · App Manager 가 만듭니다. API 문서는 API 로 새 앱을 만들지 말라고 안내합니다 | Play Console 의 「앱 만들기(Create app)」에서 만듭니다. API 참조에 앱을 만드는 메서드가 없습니다 |
| 식별자 | 번들 ID 는 API 로도 등록할 수 있습니다 | 패키지 이름은 고유하고 영구적이라 지우거나 다시 쓸 수 없습니다 |
| 빌드 업로드 · 테스트 배포 | API 키로 올릴 수 있습니다 | API 의 edits 에 번들 · 트랙 · 테스터 관리가 있습니다 |
| 개인정보 선언 | App Privacy 는 웹사이트에서 Account Holder · Admin · App Manager 가 답합니다. API 문서에서 이 항목을 다루는 리소스는 찾지 못했습니다 | 데이터 보안은 API(applications.dataSafety)로 쓸 수 있습니다. 콘텐츠 등급 · 타깃층 · 광고 같은 앱 콘텐츠 선언은 API 참조에 없습니다 |
| 심사 제출 · 출시 | API 의 Review Submissions 로도 제출할 수 있습니다 | API 의 edits 에 트랙 관리가 있습니다 |
단계
-
가입 · 결제 · 계약은 계정 소유자가 직접 합니다. Apple 은 조직을 등록하는 사람에게 조직을 법적 계약에 구속할 권한을 요구합니다. 조직은 Apple Developer Support 가 등록 정보를 확인하고 다음 단계를 이메일로 보낸 뒤에 계약을 검토하고 멤버십을 결제하며, Apple 은 USD 로 청구할 수 있는 신용카드로 결제하라고 안내합니다(2026-10-21 확인). 앱을 추가하려면 Account Holder 가 「비즈니스(Business)」 섹션에서 최신 계약에 서명해야 하고, 유료 앱이나 앱 내 결제를 내려면 유료 앱 계약(Paid Apps Agreement)에도 서명해야 합니다. Google Play 에서 유료 앱을 판매할 결제 프로필을 연결하고 「Payments settings」 페이지를 고칠 수 있는 사람은 계정 소유자뿐입니다.
위험
가입 · 결제 · 계약 동의 · 본인 확인을 화면 자동화 도구(브라우저를 조작하는 AI 에이전트 포함)에 맡기지 마세요. 이 일들은 계정 소유자의 법적 권한과 신원을 전제로 하고, Apple 의 2단계 인증 코드는 계정 소유자의 신뢰하는 기기나 전화번호로만 옵니다. 자동화에는 계정 소유자의 계정 대신, 아래 2~4단계처럼 필요한 권한만 받은 사용자 · API 키 · 서비스 계정을 씁니다.
-
사람에게는 필요한 역할만 줍니다. App Store Connect 에서 앱 레코드를 만들 수 있는 역할은 Account Holder · Admin · App Manager 입니다. Play Console 에서는 계정 소유자와 Admin 이 사용자를 초대하고 권한을 관리하며, 권한은 모든 앱이나 특정 앱 단위로 줍니다. 새 앱을 만드는 권한(「Create, edit, and delete draft apps」)은 계정 단위로만 줄 수 있습니다. 프로덕션 출시 권한(「Release to production, exclude devices, and use Play App Signing」)처럼 사용자에게 바로 영향을 주는 권한은 꼭 필요한 사람에게만 줍니다.
-
CI 에 App Store Connect API 키를 줍니다. Account Holder 가 App Store Connect 에서 API 접근을 요청하고, 요청은 건별로 검토됩니다. 승인되면 Account Holder 나 Admin 이 Users and Access → Integrations 에서 팀 키를 만듭니다(App Store 편의 7단계도 같은 경로를 씁니다).
- 팀 키는 계정의 모든 앱에 적용되어 앱 단위로 제한할 수 없습니다.
- 만든 뒤에는 키의 이름과 접근 수준을 바꿀 수 없습니다. 바꾸려면 폐기하고 새로 만듭니다.
- 키 파일은 한 번만 내려받을 수 있습니다. 내려받으면 바로 CI 의 비밀 저장소에 넣고, 잃어버리거나 유출되면 즉시 폐기합니다. 폐기한 키는 되살릴 수 없습니다.
-
CI 에 Google Play 서비스 계정을 연결합니다. Google Cloud 프로젝트에서 Google Play Developer API 를 켜고 서비스 계정을 만든 뒤, Play Console 의 Users and permissions 에서 그 서비스 계정 이메일을 사용자로 초대하고 권한을 줍니다. 개발자 계정을 Google Cloud 프로젝트에 연결하는 과정은 더는 필요하지 않다고 Google 이 안내합니다. 사용자와 앱별 권한은 API 의
users·grants로도 관리할 수 있고, 권한 변경이 반영되기까지 최대 48시간이 걸릴 수 있습니다(2026-10-21 확인). -
앱 등록은 콘솔에서 사람이 합니다. App Store Connect API 문서는 새 앱을 API 로 만들지 말고 App Store Connect 웹사이트에서 만들라고 안내합니다. 번들 ID 는 API 로도 등록할 수 있지만 앱 레코드는 App Store 편의 3단계처럼 웹사이트에서 만듭니다. Google Play 도 API 참조에 앱을 만드는 메서드가 없어 Google Play 편의 1단계처럼 Play Console 의 「앱 만들기(Create app)」에서 만들고, 이때 개발자 프로그램 정책과 미국 수출 법규를 확인하고 Play 앱 서명 서비스 약관에 동의합니다. 바꿀 수 없는 값(번들 ID · 패키지 이름)은 식별자와 버전에서 정한 값을 그대로 씁니다.
-
빌드 업로드부터 CI 로 옮깁니다. App Store 는 앱 레코드가 생기면 API 키로 빌드를 올릴 수 있습니다(App Store 편의 7단계). Google Play 는 API 의
edits에 번들 · 트랙 · 테스터 관리가 있습니다. 이 가이드는 Google Play 편의 6단계처럼 첫 번들을 Play Console 에서 내부 테스트로 올리는 흐름을 기준으로 하고, 그 뒤의 업로드를 API 로 옮기기를 권합니다. API 로 첫 번들을 올릴 수 있는지는 공식 문서에서 확인하지 못했습니다. -
선언에 답합니다. App Store 의 App Privacy 는 App Store Connect 웹사이트에서 Account Holder · Admin · App Manager 가 답합니다. App Store Connect API 문서에서 이 항목을 다루는 리소스는 찾지 못했습니다(2026-10-21 확인). Google Play 의 데이터 보안은 API(
applications.dataSafety)로 CSV 파일의 답을 쓸 수 있지만, 콘텐츠 등급 · 타깃층 · 광고 같은 앱 콘텐츠 선언은 API 참조에 없어 Play Console 에서 답합니다(Google Play 편의 8단계). 답은 다른 앱에서 옮기지 말고 이 앱이 실제로 하는 일로 정합니다. 개인정보와 권한을 함께 보세요. -
심사 제출과 출시는 사람이 정합니다. App Store Connect API 에는 심사 제출(Review Submissions)이 있고, Google Play Developer API 의
edits에는 트랙 관리가 있습니다. 다만 심사 제출과 프로덕션 출시는 사용자에게 바로 영향을 주므로, CI 가 실행하더라도 사람이 승인한 뒤에만 돌게 하세요.
확인
- App Store — Users and Access → Integrations 에 팀 키가 보이고, CI 가 그 키로 올린 빌드가 처리를 마친 뒤 App Store Connect 에 나타납니다.
- Google Play — Users and permissions 에 서비스 계정 이메일이 보입니다. API 의
users.list응답에서 그 계정의accessState가ACCESS_GRANTED면 접근 권한이 있는 상태이고,INVITED면 초대만 된 상태입니다. - 앱 등록 — App Store Connect 와 Play Console 의 앱 목록에 앱이 하나씩 있습니다.
자주 겪는 문제
API 로 App Store Connect 앱 레코드를 만들 수 있나요?
없습니다. App Store Connect API 문서는 새 앱을 API 로 만들지 말고 웹사이트에서 만들라고 안내합니다(2026-10-21 확인). 앱 레코드는 Account Holder · Admin · App Manager 가 웹사이트에서 한 번 만들고, 그 뒤의 업로드 · 등록정보 · 심사 제출을 API 로 옮기세요.
AI 에이전트 같은 화면 자동화 도구로 가입하고 결제해도 되나요?
권하지 않습니다. 조직 등록은 조직을 계약에 구속할 법적 권한이 있는 사람이 해야 하고, Apple 의 2단계 인증 코드는 계정 소유자의 신뢰하는 기기나 전화번호로만 오며, Google Play 에서 유료 앱을 판매할 결제 프로필은 계정 소유자만 연결할 수 있습니다. 가입 · 결제 · 계약 동의 · 본인 확인은 계정 소유자가 직접 하고, 자동화에는 필요한 권한만 받은 사용자나 API 키 · 서비스 계정을 쓰세요.
API 키를 특정 앱에만 쓰게 하고 싶습니다
팀 키는 계정의 모든 앱에 적용되어 앱 단위로 제한할 수 없습니다. 유출되면 계정의 모든 앱에 영향이 가므로 CI 의 비밀 저장소에만 두고, 의심되면 바로 폐기하고 새로 만드세요. 폐기한 키는 되살릴 수 없습니다.
서비스 계정을 초대했는데 API 가 권한 오류를 냅니다
Play Console 의 Users and permissions 에서 서비스 계정에 그 앱의 권한을 줬는지 봅니다. 권한 변경은 반영까지 최대 48시간이 걸릴 수 있습니다. API 는 이미 있는 앱을 다루므로 앱을 먼저 Play Console 에서 만들어야 합니다.
API 키 파일을 잃어버렸습니다
App Store Connect API 키는 한 번만 내려받을 수 있습니다. 잃어버린 키는 폐기하고 새 키를 만든 뒤 CI 의 비밀 값을 바꾸세요.
다음 단계
누가 무엇을 맡을지 정했으면 앱을 구분하는 이름과 버전 번호를 정합니다. 식별자와 버전으로 이어서 진행하세요. API 키와 서비스 계정은 스토어별 안내의 업로드 단계에서 씁니다.
출처
- developer.apple.com/help/account/membership/program-enrollment
- developer.apple.com/help/app-store-connect/manage-agreements/sign-and-update-agreements
- developer.apple.com/help/app-store-connect/get-started/app-store-connect-api
- developer.apple.com/help/app-store-connect/create-an-app-record/add-a-new-app
- developer.apple.com/help/app-store-connect/manage-app-information/manage-app-privacy
- developer.apple.com/documentation/appstoreconnectapi/apps
- developer.apple.com/documentation/appstoreconnectapi/bundle-ids
- developer.apple.com/documentation/appstoreconnectapi/review-submissions
- support.apple.com/en-us/102660
- support.google.com/googleplay/android-developer/answer/9844686
- support.google.com/googleplay/android-developer/answer/9859152
- developers.google.com/android-publisher/getting_started
- developers.google.com/android-publisher/api-ref/rest
- developers.google.com/android-publisher/api-ref/rest/v3/users
- developers.google.com/android-publisher/api-ref/rest/v3/grants/create
- developers.google.com/android-publisher/api-ref/rest/v3/applications/dataSafety