iOS - MDM證書申請流程

申請成為MDM Vendor

首先需要擁有一個 iOS Developer Enterprise Program 帳號;

申請成為MDM Vendor,iOS企業(yè)開發(fā)帳號默認(rèn)不支持MDM功能,需要向蘋果申請才能開通,訪問 https://developer.apple.com/contact/submit.php,并通過iOS企業(yè)開發(fā)帳號Agent身份登錄,提交申請說明希望成為MDM Vendor,蘋果一般在一個工作日內(nèi)會處理完畢,處理完后會給Agent發(fā)郵件通知,此時再次登錄到開發(fā)中心Add iOS Certificate界面或多處一個“MDM SCR”選項(xiàng)

1 創(chuàng)建私鑰

打開鑰匙串訪問,點(diǎn)擊“鑰匙串訪問”→證書助理→從證書頒發(fā)機(jī)構(gòu)請求證書如圖1-1:


image.png

圖1-1

點(diǎn)擊后調(diào)到如圖1-2窗口


image.jpeg

圖1-2

image.png

image.png

如上圖:用戶電子郵件填入注冊的蘋果賬號(Apple ID相同的郵箱地址),常用名稱填入名稱,記住這個名稱,需要提供給開發(fā)人員。CA電子郵件地址空著不填,最后一項(xiàng)選擇存儲到磁盤。然后點(diǎn)繼續(xù),保存。不修改文件名,你會在文件夾內(nèi)找到CertificateSigningRequest.certSigningRequest文件,我們這里修改一下文件名方便我們查找MdmPushChat.certSigningRequest,鑰匙串內(nèi)會生成一個私鑰。將私鑰導(dǎo)出名為vendor.p12,導(dǎo)出時設(shè)置密碼,一定要記住。
image.png

圖1-3

使用命令生成vendor.key

openssl pkcs12 -in vendor.p12 -nocerts -out vendor.key

會要求你輸入3次password:vendor.p12 的password、vendor.key 的password、vendor.key 的password。密碼一定要記住

2 提交CSR

打開網(wǎng)頁https://developer.apple.com,用蘋果ID登錄如圖2-1,點(diǎn)擊Certificates,Identifiers&Profiles

image.png

圖2-1

操作如圖2-2,1production→2加號
image.png

圖2-2

選擇MDM CSR

image.png

圖2-3

如圖2-4選擇Continue

image.png

圖2-4

Choose File選擇步驟1中保存的CSR(MdmPushChat.certSigningRequest)文件如圖2-5

image.png

圖2-5

然后點(diǎn)擊Continue,MDM vendor文件生成如下圖2-6

image.jpeg

圖2-6

點(diǎn)Download,下載下來MDM.cer。

3 生成pem文件

下載WWDR證書與蘋果根證書:http://www.apple.com/certificateauthority/,下下來兩個文件名為:AppleIncRootCertificate.cer、AppleWWDRCA.cer的文件,然后終端使用命令行生成pem文件

openssl x509 -inform der -in mdm.cer -out mdm.pem

openssl x509 -inform der -in AppleWWDRCA.cer -out intermediate.pem

openssl x509 -inform der -in AppleIncRootCertificate.cer -out root.pem

注意:如果你使用mdm_vendor_sign.py 腳本簽名vendor 的plist 文件,則此步可省略。

我下面就是采用這種方法

4.MDM Customer

1、重復(fù)第一步創(chuàng)建一個Customer的certSigningRequest 使用鑰匙串創(chuàng)建CSR,記住密鑰對常用名稱(便于導(dǎo)出)。 導(dǎo)出 certSigningRequest。文件名: tortoise_customer.certSigningRequest。

在mac上生成customer的encode文件plist_encoded,打開終端輸入:(mdm_vendor_sign.py腳本文件,請到github下載:https://github.com/grinich/mdmvendorsign

注意,mdm_vendor_sign.py 腳本只需要3個文件:customer的CSR、vendor.key、mdm 證書。它不需要WWDR 證書和蘋果根證書,也不需要進(jìn)行復(fù)雜的證書格式轉(zhuǎn)換。WWDR和蘋果根證書的下載以及pem 格式轉(zhuǎn)換都是由腳本自動進(jìn)行的。

image.png

腳本下載下來后需要把這三個文件拖到這里,然后執(zhí)行我們下面的命令:

Python mdm_vendor_sign.py --csr tortoise_customer.certSigningRequest --key 'vendor.key' --mdm mdm.cer

如果不出問題的話,會輸出下面:

image.png

5.上傳plist

用你的Apple ID 登錄 https://identity.apple.com/pushcert/ ,點(diǎn)擊“Create aCertificate”,上傳plist_encoded 文件。使用java 代碼簽名的請注意,不要上傳plist.xml,而是上傳plist_encoded。上傳后會產(chǎn)生一個APNS 證書,下載后得到一個.pem 文件(為方便使用,改名為push_cert.pem)。雙擊.pem 文件將證書安裝到鑰匙串中。打開鑰匙串,看看到該證書名為“APSP:”,如下圖所示:

image.png

我們發(fā)現(xiàn)剛剛制作的證書是“此證書是由未知頒發(fā)機(jī)構(gòu)簽名的”的,為什么呢,明明簽名機(jī)構(gòu)是蘋果的。如果細(xì)心的同學(xué)應(yīng)該能發(fā)現(xiàn),以前我們用的簽名者是 Apple Application Integration Certification Authority

但是現(xiàn)在變成了 Apple Application Integration 2 Certification Authority,就多了個2。

image.png

解決方法:下載相應(yīng)的證書,https://www.apple.com/certificateauthority/

image.png

下載好之后,雙擊安裝之后,就可以看到“此證書有效”。(其實(shí)不安裝這個證書,它也不會影響MDM功能使用)

這個時候還需要導(dǎo)出p12給我后臺使用,因?yàn)楹笈_只能識別p12,
image.png

導(dǎo)出時一定要以MDM_mobileark.p12這樣命名,密碼自定義(注意區(qū)分大小寫)

image.png

這個就是我們最終生成的p12證書,把他上傳到我們的應(yīng)用后臺就可以了。

參考文章:
http://www.itdecent.cn/p/472cd79a6d0f

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容