申請成為MDM Vendor
首先需要擁有一個 iOS Developer Enterprise Program 帳號;
申請成為MDM Vendor,iOS企業開發帳號默認不支持MDM功能,需要向蘋果申請才能開通,訪問https://developer.apple.com/contact/submit.php,並通過iOS企業開發帳號Agent身份登錄,提交申請說明希望成為MDM Vendor,蘋果一般在一個工作日內會處理完畢,處理完后會給Agent發郵件通知,此時再次登錄到開發中心Add iOS Certificate界面或多處一個“MDM SCR”選項
1 創建私鑰
打開鑰匙串訪問,點擊“鑰匙串訪問”→證書助理→從證書頒發機構請求證書如圖1-1:

圖1-1
點擊后調到如圖1-2窗口

圖1-2


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

圖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
打開網頁https://developer.apple.com,用蘋果ID登錄如圖2-1,點擊Certificates,Identifiers&Profiles

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

圖2-2
選擇MDM CSR

圖2-3
如圖2-4選擇Continue

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

圖2-5
然后點擊Continue,MDM vendor文件生成如下圖2-6

圖2-6
點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 Customer
再創建一個新的CSR文件,為了和上面的區分,常用名稱也要和上面的不一樣,我們把名字命名為MDMCustomer.csr。
轉換 CSR->cer
openssl req -inform pem -outform der -in MDMCustomer.csr -out customer.der
把MDMCustomer.csr給vendor,vendor需要用 softthink 的 java 代碼對 customer 提交的 customer.der 進行簽名。softthink的下載地址
新建一個java項目把softthink的代碼和提供的dom4j-1.6.1.jar導入,把上面生成的文件和Test.java放到同一個目錄下。
還會碰到sun.misc.BASE64Encoder找不到jar包的問題,請自行百度解決。

圖3
我們打開Test.java,alias是vendor生成CSR文件時候的常用名稱,password是vendor.p12的密碼。

圖4
代碼執行結果將在程序目錄下生成一個 plist_encoded 文件。
上傳 plist
用你的 Apple ID 登錄https://identity.apple.com/pushcert/,點擊“Create aCertificate”,上傳 plist_encoded 文件。上傳后會產生一個 APNS 證書,下載后得到一個 .pem 文件(為方便使用,改名為 push_cert.pem)。雙擊 .pem 文件將證書安裝到鑰匙串中。打開鑰匙串,看看到該證書名為“APSP:”,如下圖所示:

圖5
從鑰匙串中把證書導出p12格式,就是MDM中需要用到的證書了。