2011/06/10

Keychain AccessでのCSR作成で失敗したら

iOS Deviceで自作のプログラムを実行させる為には、iOS Development Certificateが必要です。

このCertificateを作成するには、まずCerificate Signing Request(CSR)と呼ばれるファイルを作成しなければなりません。

CSRファイルは、自分自身のIDやメールアドレス、名前などが記載されたファイルです。このファイルをiOS Provisioning Portalサイトを通じて送信し、署名してもらうことでiOS Development Certificateが作成されます。

CSRを作成するには、MacOS X付属のKeychain Accessアプリを使います。Keychain Accessアプリは、/Applications/Utilities/へ格納されています。

Keychain Accessアプリ起動後、メニューバーにある「Keychain Access」から「Certificate Assistant」を選び、その中の「Request a Cetificate from a Certificate Authority...」を選択します。

すると、CSRを作成するためのCertificate Assistantが立ち上がります。


入力しなければならない情報は、User Email AddressとCommon Nameです。これらの値はiOS Developerで登録した値を指定する必要があります。CA Email Addressは必要ありません。Request is はSaved to diskを選択します。Continueを押せば、セーブダイアログが開かれ、CSRが作成されます。



作成されたCSRが不正であったり上手く生成されない場合には、以下の点を確認してみるとよいでしょう。

Certificate Assistantを起動する際、「Request a Cetificate from a Certificate Authority...」ではなく「Request a Cetificate from a Certificate Authority With "自分の名前"...」と表示されている場合には、正しく生成されません。この現象は、Keychain Accessのウィンドウ内で何らかのprivate keyを選択している場合に生じます。選択を解除してから再度試すと上手く行くでしょう。

また、ごくまれに、セーブダイアログで「Save」ボタンを押したにも関わらず、CSRファイルが何処にも生成されない場合があります。Save処理が瞬間的に終了した場合には要注意です。この場合には、何らかのCertificateが壊れている可能性があります。

iOS Dev Center から iOS Provisioning Portalへ移動し、Developmentタブにある「If you do not have the WWDR intermediate certificate installed, lick here to download now.」からWWDR intermediate certificateをダウンロードします。


このファイルをダブルクリックし、Keychain Accessへインストールしましょう。Add Certificatesウィンドウが開かれインストールが行われます。ウインドウが開かれない場合にはCertificateのダウンロードに失敗している可能性があります。


インストールが無事済んだ場合、再度CSRの作成を試すことで、今度は上手く生成できるかもしれません。

Webで同様の症状を報告されていた方の中には、必要なcertificateを全てreloadしたと書かれている方もいらっしゃいましたが、幸い私はWWDR cetificateを再インストールするだけで、CSRの生成が出来るようになりました。

同様の問題で悩んでいる方のお役に立てば幸いです。

0 件のコメント:

コメントを投稿