๐ Code Signing, Provisioning Profile, ์ด์ ๋ ์ดํดํ๊ณ ๋์ด๊ฐ๊ธฐ #81
moonkey48
started this conversation in
์์ ๊ฒ์ํ
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Provisioning Profile์ด ๊ทธ๋์ ๋ญ ํ๋๊ฑธ๊น์?
๋ค์ด๊ฐ๋ฉฐ
Code Signing์ด ๋ญ๊น์? ๊ทธ๋์ Provisioning Profile์ด๋ ํธ๋ํฐ ๋น๋๋ฅผ ํ๋ฉด์๋ ์ดํดํ์ง ์๊ณ ์ฌ์ฉํ ๊ฒ์ ๋ฐ์ฑํ๋ฉฐ ๋๊น ์ ์์ํ๊ฒ ๋์์ต๋๋ค๐ซ ์์ ๊ฐ์ ์ง๋ฌธ์ ์ ํ์ํ๊ณ์์ ๊ฐ๋ฐ์ ํ๋ค๋ณด๋ฉด ์์ฐ์ค๋ฝ๊ฒ ๊ฒฝํํ๊ฒ ๋๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ ์ง๋ฌธ์ ๋ตํ๊ธฐ ์ํด์๋ ๋จผ์ ์ ํ์ด ์ฑ์ ์คํ์ํค๊ธฐ ์ํด ๋ง๋ ๋ณด์์ ๋ํด ์ดํด๊ฐ ํ์ํฉ๋๋ค.
์ฑ์ ์คํ์ํค๋ ค๋ฉด
์ฑ์ ์ฑ์คํ ์ด์์ ๋ค์ด๋ฐ์ ์ ์๊ณ , ๊ทธ ์ฑ์ ์ ํ์ด ๋ฐ๊ธํ ์ธ์ฆ์(Certificate)๋ฅผ ํตํ ์ฝ๋ ์๋ช (Code Signing)์ด ๋์ด์ผ ์คํ์ด ๋ ์ ์์ต๋๋ค. ์ฝ๋ ์๋ช (Code Signing)์ด๋, ์ฑ์ ์๋ช ์ ํ ์ดํ ๋ณ๊ฒฝ์ด ๋์ง ์์๋ค๋ ๊ฒ์ ๋ณด์ฅํ๊ธฐ ์ํ ์ฅ์น์ ๋๋ค. ํ์ง๋ง ๊ฐ๋ฐ์ ํ๋ค๋ณด๋ฉด ์๋ฎฌ๋ ์ดํฐ๊ฐ ์๋ ์ค์ ๊ธฐ๊ธฐ์์ ์คํ์ด ํ์ํ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์๋ ์ด๋ป๊ฒ ์คํ์ ํด์ผ ํ ๊น์?
์ ํ์ Apple Developer Program์ ๊ฐ์ ํ ๊ฐ๋ฐ์๊ฐ ์ด ์ธ์ฆ์(Certificate)๋ฅผ ๋ฐ๊ธํ๊ณ ์ฝ๋์๋ช ์ ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํด์ค๋๋ค. ์ฝ๋ ์๋ช ์ ํตํด ๋ง๋ค์ด์ง Provisioning Profile์ ํตํด ์คํ๋ ์ฑ์ ID, Entitlements, ๋ฑ๋ก๊ธฐ๊ธฐ, ๋ฑ์ ๋น๊ตํ์ฌ ์๋ช ๋ ๋ด์ฉ๊ณผ ์ผ์นํ๋์ง ํ๋จํ๊ณ , ์ผ์นํ๋ ๊ฒฝ์ฐ ์ฑ์ ์คํ์ํค๊ฒ ๋ฉ๋๋ค.
๋ค์ ์์ ์ง๋ฌธ์ผ๋ก ๋์ด๊ฐ๋ฉด, ์์ ์ง๋ฌธ์ ๋ชจ๋ ์ฝ๋ ์๋ช ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ์คํ์ด ๋์ง ์๋ ๊ฒ์ด๋ผ๊ณ ๋งํ ์ ์์ต๋๋ค. ๋ค์ ๋์ค๋ ๋ด์ฉ์ ์ด ์ฝ๋์๋ช ์ด ์ด๋ค ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ง๋์ง, ๊ทธ๋ฆฌ๊ณ ํ๋์ ๊ณ์ ์ ๋ค๋ฅธ ํ์๋ค๊ณผ ๊ณต์ ํ๊ธฐ ์ํด์๋ ์ด๋ป๊ฒ Provisioning Profile์ ๊ณต์ ํ ์ ์๋์ง ๋ค๋ฃจ๊ฒ ๋ฉ๋๋ค.
iOS Code Signing
iOS ์ฑ์ Signingํ๊ธฐ ์ํด ํ์ํ ์์
CSR(Certificate Signing Request)
Apple Certificates
Provisioning Profile
Bundle Identifier
kr.austin.wuxiameditation
ASDFGH1234.kr.austin.wuxiameditation
์ ๊ฐ์ ํํ๊ฐ ๋ฉ๋๋ค.Code Signing Process
์ถ์ฒ https://medium.com/ios-os-x-development/ios-code-signing-provisioning-in-a-nutshell-d5b247760bef
Xcode๊ฐ ์ค์น๋๋ฉด Keychain access์ Intermediate Certificate ๋ ์ธ์ฆ์๊ฐ ์ ์ฅ๋ฉ๋๋ค.(์ด ๊ณผ์ ์ ๋ณดํต ์๋์ ์ผ๋ก ๋๋ฏ๋ก ๊ฐ๋ฐ์๊ฐ ์ ๊ฒฝ์ฐ์ง ์์๋ ๋๋ค.)
Keychain access์์ Certificate Signing Request (CSR)์ ์์ฑํฉ๋๋ค.
CSR๋ก Certificate ์์ฑ
Certificates์์ +๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
iOS Distribution (App Store and Ad Hoc)ํด๋ฆญํฉ๋๋ค. โ ํ๋ก๋น์ ๋ ์ ํ์ ๋ฐ๋ผ ์ ํ
Create a New Certificate ํํธ์์ ๋ก์ปฌ์์ ์์ฑํ๋ CSR์ ์ฌ๋ฆฐ๋ค.
์์ฑ๋ Certificate๋ฅผ ๋ค์ด๋ฐ๋๋ค. (.cer ํ์ผ)
๋ค์ด๋ฐ์ Certificate ํ์ผ์ ๋๋ธํด๋ฆญ ํ, Keychain Access์ ์ ์ฅํฉ๋๋ค.
Provisioning Profile์ด Certificate์ App Id, Device Identifiers(UDID)๋ค ๋ฅผ ๊ฐ์ง๊ณ Xcode์ ์ํด ์์ฑ๋ฉ๋๋ค.
Xcode๋ ์ฑ์ ์๋ช ํ๊ณ , Provisioning Profiles์ ๋น๋ํ๊ธฐ ์ํ๋ ๊ธฐ๊ธฐ์ ์ ์กํฉ๋๋ค.
iOS ๊ธฐ๊ธฐ๋ ํด๋น Provisiong Profile์ด ์ฑ์ ์๋ช ์ ์ฌ์ฉ๋ Certificate๋ฅผ ํฌํจํ๋ ์ง ํ์ธํ๊ณ , ๊ธฐ๊ธฐ์ UDID์ App ID๋ ๋ง๋ ์ง ํ์ธํ ํ์ ์ค์น๋ฅผ ํ์ฉํฉ๋๋ค.
์ฑ์ด ์คํ๋ฉ๋๋ค.
Distribution Certificate ๊ณต์ ํ๊ธฐ
Synchronizing your code signing identities with Apple Developer Portal | Apple Developer Documentation
Details of Provisioning Profile
ํ๋ก๋น์ ๋ ํ๋กํ์ ํฌํจ๋ ๋ด์ฉ
App ID
Register an App ID - Manage identifiers - Account - Help - Apple Developer
ํธ์ ์๋ฆผ, Passbook, HealthKit, CloudKit ๋ฑ๊ณผ ๊ฐ์ด ์ฑ์์ ์ฌ์ฉํ ์์๋ ํน๋ณํย Entitlementsย (๊ถํ/์๊ฒฉ)
์ฑ ์คํ์ด ํ์ฉ ๋ ๊ธฐ๊ธฐ์ย UDID ๋ชฉ๋ก(AD hoc ํ๋กํ์ผ์๋ง ํฌํจ๋จ, Enterprise profile์ ๊ธฐ๊ธฐ์ ํ X)
Apple์์ ๋ฐ๊ธ ํย ๋ฐฐํฌ ์ธ์ฆ์ย (certificate)
ํ๋ก๋น์ ๋ ํ๋กํ์ ์ ํ
Development provisioning profiles
Distribution provisioning profiles
App Store / Ad Hoc / Enterprise (in house)ย ๋ฐฐํฌ๊ฐ ํฌํจ๋จ
Distribution Certificatesย ์ฌ์ฉ
Ad-Hoc
Enterprise
App Store
Reference
Create a development provisioning profile - Manage profiles - Account - Help - Apple Developer
https://github.com/sujinnaljin/TIL/blob/master/Swift/Provisioning profile.md
[iOS] Provisioning profile์ด๋ & ipa์์ ๊น๋ณด๊ธฐ
iOS Code Signing & Provisioning in a Nutshell
Beta Was this translation helpful? Give feedback.
All reactions