2012-05-11 13 views
8

クライアント証明書を(電子メールなどで)インストールしてから、その証明書を使って自分のアプリから送信されたリクエストを認証したいと考えています。私はAppleがそのような種類のアクセスを許可しないと確信しているが、明確な答えを見つけることはできない。それとも、アプリ内からデバイスにインストールされたクライアント証明書にアクセスする方法はありますか?アプリ内のiOSデバイスにインストールされたクライアント証明書を使用することはできますか?

を編集します。これは明確にするために、ネイティブアプリです。ウェブアプリケーションではありません。

答えて

3

あなたのアプリは、独自のキーチェーン(または同じプロビジョニング証明書を共有する他のサードパーティ製アプリケーションのキーチェーン)に保存したものだけを使用できます。 実際の読み込みでは、アプリケーションに送る.p12をデコードするために、openssl(それにobj-cラッパーを書きました)を使用します。

設定 - >一般 - >プロファイルに読み込まれた証明書は何らかの形で保護されているため、組み込みのアプリケーション(メール、サファリ)のみがそこに追加できます。

+0

がSafariServicesを使用するアプリは認証のために、アップルのアクセス・グループに保存されているクライアント証明書を、使用することはできますか? –

0

アプリでクライアント証明書を使用するには、アプリ内でアプリキーチェーンに証明書のインポートを実装する必要があります。 (PKCS#12証明書フォーマットを使用する必要がありますが、iOSによって既に登録されている ".p12"以外の拡張子を持つ、アプリに登録する必要があります(エクスポートされたUTIとドキュメントタイプを検索する必要があります)。 「)私のアプリで使用される.X-P12 VEの こちらを参照してください:ここiOS Client Certificates and Mobile Device Management と:https://developer.apple.com/library/ios/qa/qa1745/_index.html

関連する問題