クライアント証明書を利用する
~Android版~
※注意
本機能は通常はシステム管理者からの連絡・案内があってから利用する機能となりますので特に案内がなければ、あるいは、ご利用の予定がなければ本節は読み飛ばしていただいて結構です。
※補足
証明書は Android標準のセキュリティ領域で管理されます。このセキュリティ領域はOS内の共通のため、他のアプリからも参照することが可能です。
証明書の取り込みは各アプリごとに行う必要はありませんが、どの証明書利用するのか選択する操作は各アプリごとに必要です。
【重要】Android OSのセキュリティ仕様上、OSにクライアント証明書をインストールすると画面のロック(PIN、パスコード、パターンなど)が必須になります。Androidデバイスの画面ロックを設定していない場合、後述の操作中にOSの画面ロックの方法を設定するよう要求されるため、その場合は適切な画面ロックを設定してください。
事前にご用意いただくもの
クライアント証明書ファイル
秘密鍵を含む(PKCS#12形式のファイル 拡張子.p12 ※.pfxという拡張子で配布される場合もあります)
および秘密鍵を保護しているパスフレーズ(取り込み時に入力します)
中間CA証明書ファイル
クライアント証明書の妥当性を証明する認証局の証明書で、クライアント証明書の発行元によっては提示される場合があり、その場合はこの証明書もOSにインストールします。
クライアント証明書をOSに取り込みアプリで選択する
ここではクライアント証明書を証明書発行元のWebページからAndroid OS内にダウンロードしたとして説明します。
またAndroidデバイスの画面ロックを設定していない場合、操作中にOSの画面ロックの方法を設定するよう要求されるためその場合は適切な画面ロックを設定してください。
- 1
クライアント証明書ファイルをタップするか、あるいはAndroid OSのシステムの「設定>セキュリティ」の「ストレージからのインストール」で対象のクライアント証明書ファイルを選択します。
- 2
証明書を抽出するためのパスワードの入力が要求されます。ここで秘密鍵を保護しているパスフレーズを入力してください。
- 3
続いて証明書の名称の入力が要求されます。通常は証明書に設定されている人が読んで理解しやすい識別名称が自動でセットされますが、証明書によっては名称が省略されている場合は、証明書を識別する長い文字列が表示される場合があります。その場合そのままでも利用できますがわかりやすい名称(任意)を付与することを推奨します。
- 4
エラーがなければ取り込みに成功です。
- 5
次にクライアント証明書を利用したいアプリを起動します。
- 6
アプリ内の設定画面の「クライアント証明書」あるいは「クライアント証明書を有効にする」をタップすると、証明書の選択ダイアログが表示されます。
※メニュー名称はアプリによって異なります。
- 7
ここで先ほど登録した証明書を選択し許可します。
- 8
証明書を選択すると証明書の識別名(エイリアス名)が設定画面に表示されます。 この状態のとき通信時にクライアント証明書を要求される場合に自動的にこの証明書を提示して通信するようになります。
※補足
クライアント証明書を使う環境でQRコード認証を行う際、QRコード画面をHTTPSで開く必要があります。(これはQRコードに含まれている接続用のURLはその画面を開いたときのURLに応じて作成されるためです)
中間CA証明書ファイルをOSにインストールする
こちらは該当ファイルが提示されている場合にのみ行います。
ここでは証明書を証明書発行元のWebページからAndroid OS内にダウンロードしたとして説明します。
クライアント証明書をアプリから破棄する
クライアント証明書が不要になった場合は、以下手順でアプリ内から取り込まれている証明書を破棄します。
なおOSにインストールされている証明書は引き続き残っていますので、それらを削除するには設定のセキュリティから「認証ストレージの消去」を選択する必要があります。
ただし、この操作はOSにユーザーによって追加されたクライアント証明書データがすべてリセットされるため(個別に指定ができません)、他に必要な証明書がインストールされていないことを、前掲のクライアント証明書の選択ダイアログ上で確認して実行することをお奨めします。