2

Web サービスと通信し、クライアント証明書認証を使用するプライベート アプリケーションがあります。

ユーザーごとに異なる証明書を使用する必要があるため、アプリケーション リソースに追加できません。アプリケーションを ipad シミュレーターでテストし、自分のコンピューターにある証明書を使用して動作しました。

証明書なしでアプリケーションをインストールし、アプリケーションが iPad にインストールされた後、証明書を追加してアプリケーションでこの証明書を読み取るにはどうすればよいですか?

クライアントごとに証明書を電子メールで送信することを考えましたが、クライアントはどのように証明書を追加し、どのようにアプリケーションでそれを読み取ることができますか?

4

1 に答える 1

2

次のように、証明書をサーバー フォルダーに配置し、コードで URL を呼び出すだけです。

NSURL *url = [NSURL URLWithString:@"http://www.yoururl.com/cert.pem"];
[[UIApplication sharedApplication] openURL:url];

このコードにより、アプリはそれが証明書であることを識別し、ユーザーにそれをインストールするように求めます (これは非常に簡単です!)。

編集

デバイスに証明書がインストールされていない場合、URL リクエストが機能せず、次の方法で処理するというエラーが表示されます。

+ (void)treatConnectionErrors:(NSError *)error withAlert:(BOOL)withAlert
{
    if (error)
    {
        /* If it's a certificate error, shows alert with link to install certificate */
        if ([error code] == -1202)
        {
            // do something, such as show alertview warning about the certificate 
        } else {
            // treat other errors if you want to
        }
     }
}
于 2013-03-01T17:30:39.327 に答える