Face ID と生体認証によるロック解除

マスターパスワードでデータベースを一度ロック解除すると、Kakuremi は以降のロック解除に Face ID や Touch ID を使用できます。本記事では、生体認証によるロック解除の有効化方法、マスターパスワードの保管場所、生体認証が利用できない場合の挙動について説明します。

1

まずマスターパスワードで一度ロック解除する

生体認証によるロック解除は、既存のマスターパスワードでのロック解除を前提としています。データベースを初めて開くときは、マスターパスワードを入力します(YubiKey を設定している場合は YubiKey もタップします)。ロック解除画面では、パスワード欄が常に主たる入力手段です。

2

Face ID ロック解除を有効にする

設定を開き、セキュリティのセクションを探します。Face ID ロック解除をオンにします。「Face ID を有効にする」といった別途の確認ダイアログはありません。iPhone で生体認証が利用でき、このトグルがオンになっていれば、次にマスターパスワードでロック解除したときに Kakuremi がマスターパスワードを保存し、以降のロック解除で Face ID や Touch ID を使えるようになります。

Kakuremi の設定画面、セキュリティのセクション

顔や指紋を登録していないシミュレーターでテストしている場合、利用できる生体認証がないため、Face ID ロック解除の行は表示されません。

3

マスターパスワードの保管場所

生体認証によるロック解除がオンのとき、Kakuremi はマスターパスワードを iOS キーチェーンに、保護クラス WhenUnlockedThisDeviceOnly とアクセス制御 .biometryCurrentSet を付けて保管します。マスターパスワードがデバイスの外に出ることはなく、Secure Enclave には保存されません。iOS は生体認証に成功した後にのみ、これを Kakuremi に渡します。

4

Face ID でロック解除する、または入力にフォールバックする

以降のロック解除では、Kakuremi が自動的に Face ID または Touch ID を求めます。生体認証に失敗した場合、画面はそのままパスワード欄に留まります。「マスターパスワードを使用」といった別のボタンはありません。続行するには、マスターパスワードを入力してください。

5

自動ロックと再ロック

Kakuremi は自動ロックのタイムアウト後に保管庫を再ロックします(既定では 1 分。設定で調整できます)。自分で実行したロックの後は、Kakuremi が生体認証を自動的に求めることはありません。改めてデータベースを開くと求められます。

6

Face ID ロック解除をオフにする

Face ID ロック解除をオフにすると、生体認証ボタンが非表示になり、自動的な認証要求が止まり、マスターパスワードの保存も止まります。さらに、キーチェーンに保存済みの認証情報も消去されるため、次回のロック解除にはマスターパスワードが必要になります。

注意: 保存される認証情報は .biometryCurrentSet に紐付いているため、iOS で新しい顔や指紋を登録すると無効になります。その場合は一度マスターパスワードを再入力する必要があり、その後に生体認証によるロック解除が再開します。
ヒント: マスターパスワードは思い出せる場所に控えておいてください。生体認証によるロック解除は、そのパスワードの上に乗った利便性のための層であり、パスワードの代わりではありません。デバイスの再起動後、新しい生体認証の登録後、あるいはトグルをオフにした後には、引き続きマスターパスワードが必要です。