> For the complete documentation index, see [llms.txt](https://docs.keeper.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.keeper.io/keeperpam/jp/commander-sdk/keeper-commander-sdks/sdk-command-reference/login-commands/biometric-login-commands.md).

# 生体認証ログインコマンド

プラットフォームごとの生体認証ログインの概要とコマンド操作に関する詳細

### 仕組み

生体認証ログインでは、ユーザーがパスワードを入力せず、**生体認証情報** (指紋、顔認証、その他の安全なトークン) で認証できます。これらはユーザーに紐づく暗号トークンとして扱われます。

生体認証 (Windows Hello) はWindows端末側で構成する必要があります。詳しくはMicrosoftのWindows Hello構成ガイドを[こちら](https://support.microsoft.com/en-us/windows/configure-windows-hello-dae28983-8242-bb2a-d3d1-87c9d265a5f0)からご参照ください。

#### 1. 認証情報の作成 (登録)

* **生体認証情報**は、ユーザーの端末上でローカルに生成されます。
  * **公開鍵と秘密鍵のペア**が作られます。
  * 秘密鍵は端末内に安全に保管され、**端末の外には出ません**。
* **公開鍵**がKeeperに送られ、ユーザーアカウントに登録されます。
* この公開鍵は、以降の認証用にユーザーと関連付けて保持されます。

#### 2. 認証 (ログイン)

* 生体認証でログインするとき、端末は秘密鍵で**暗号チャレンジ**に署名します。
* 署名済みのチャレンジ (トークン/アサーション) がKeeperに送られます。
* 登録済みの公開鍵で署名が検証されます。
* 検証に成功した場合:
  * そのトークンは本人確認の証拠として扱われます。
  * ボルト/セッションへのアクセスが許可されます。

#### 3. 基本原則

* **ゼロ知識** – 生体データや秘密鍵はKeeperに送られず、公開鍵のみが保持されます。
* **端末に紐づく認証情報** – 認証情報は、作成した端末に結び付きます。
* **パスワードレスログイン** – 一度登録すれば、マスターパスワードの代わりに使えたり、第2要素として機能したりします。
* **フォールバック** – 生体認証が使えない場合でも、パスワードやその他の2要素認証でログインできます。

### 要件

{% tabs %}
{% tab title="PowerCommander" %}
PowerCommanderでは、Windows Helloのみを使った生体認証ログインが利用できます。

**要件:**

1. Windows 11以降が必要です
2. PowerCommander 1.0.7以降であること
   {% endtab %}

{% tab title="Python CLI" %}
Python CLIでは、Windows HelloとmacOSの両方で生体認証ログインが利用できます。\
Python 3.10以上が必要です。
{% endtab %}

{% tab title="DotNet CLI" %}
これらのコマンドは、Windows上の.NET Framework 4.7.2 (net472) 向けビルドでのみ利用できます。
{% endtab %}
{% endtabs %}

#### 対応コマンド一覧

以下のコマンドを扱います。

1. [生体認証の登録コマンド](#register-biometric-command)
2. [認証情報表示コマンド](#show-credential-command)
3. [認証情報検証コマンド](#verify-credential-command)
4. [認証情報登録解除コマンド](#unregister-credential-command)
5. [表示名変更コマンド](#change-name-command)

### 生体認証の登録コマンド <a href="#register-biometric-command" id="register-biometric-command"></a>

ログイン中のユーザーのメールアドレスで新しいパスキーを作成します。生体認証ログインを既定のログイン方法に設定した後、ログイン時の認証にこのパスキーが使われます。

CLIへのログインが必要です。

**注:**

1. 実行後、生体認証を既定のログイン方法にするには、端末をKeeperに登録する必要があります。
2. 永続ログインは生体認証ログインより優先されます。端末で永続ログインが有効な場合、ログイン時に生体認証情報は検証されません。

{% tabs %}
{% tab title="PowerCommander" %}

```powershell
Register-KeeperBiometricCredential
```

**対象:** Windows Helloのみ。

**フラグ:**

**PassThru:** 認証情報IDなどの詳細出力の有無。`true` のとき詳細を表示し、省略時は表示しません。

**例**

*PassThruフラグあり*

```powershell
PS> Register-KeeperBiometricCredential -PassThru
Biometric Credential Creation for Keeper
Please complete Windows Hello verification to create the credential...
Credential ID stored for user: <user>
Credential created successfully
Success! Biometric authentication "<user>" has been registered.
Please register your device using the "Set-KeeperDeviceSettings -Register" command to set biometric authentication as your default login method.

Name                           Value
----                           -----
Username                       <user>
Timestamp                      26-09-2025 08:01:08
DisplayName                    <user>
CredentialId                   ...W25xo-z_9QyWdti5CsQ
Success                        True
```

*PassThruフラグなし*

```powershell
PS>Register-KeeperBiometricCredential
Biometric Credential Creation for Keeper
Please complete Windows Hello verification to create the credential...
Credential ID stored for user: <user>
Credential created successfully
Success! Biometric authentication "<user>" has been registered.
Please register your device using the "Set-KeeperDeviceSettings -Register" command to set biometric authentication as your default login method.
```

{% endtab %}

{% tab title="Python CLI" %}

```shell
My Vault> biometric register
```

**対象**: WindowsとmacOSの両方。
{% endtab %}

{% tab title="DotNet CLI" %}

```bash
biometric register
```

ログイン中のユーザーのメールアドレスで新しいパスキーを作成します。端末に生体認証ログインを登録した後、ログイン時の認証にこのパスキーが使われます。

CLIへのログインが必要です。

**注:**

1. 実行後、生体認証を既定のログイン方法にするには、端末をKeeperに登録する必要があります。
2. 永続ログインは生体認証ログインより優先されます。端末で永続ログインが有効な場合、ログイン時に生体認証情報は不要になります。
3. Windows上のnet472向けビルドでのみ利用できます。
   {% endtab %}
   {% endtabs %}

### 認証情報表示コマンド <a href="#show-credential-command" id="show-credential-command"></a>

指定アカウントに登録済みの認証情報を一覧表示し、認証器の種類、認証情報ID、作成日、最終利用日を確認できます。

CLIへのログインが必要です。

{% tabs %}
{% tab title="PowerCommander" %}

```powershell
Show-KeeperBiometricCredentials
```

**フラグ:**

**IncludeDisabled:** 有効な認証情報に加え、無効化された過去の認証情報も表示

**例**

```powershell
PS> Show-KeeperBiometricCredentials -IncludeDisabled

Registered Biometric Authentication Methods:
----------------------------------------------------------------------
Id: ....w6ZGlzYWJsZWQ=
Name: Platform Authenticator (DISABLED)
Created: 2025-09-25 10:22:17
Last Used: 2025-09-25 11:12:00
----------------------------------------------------------------------
Id: YlDRvVIYsC0.....
Name: Platform Authenticator
Created: 2025-09-25 12:17:10
Last Used: 2025-09-25 12:26:28
----------------------------------------------------------------------
```

{% endtab %}

{% tab title="Python CLI" %}

```sh
My Vault> biometric list
```

**出力例:**

```shell
Registered Biometric Authentication Methods:
----------------------------------------------------------------------
Name: Commander CLI (MacBook)
Created: December 20, 2023
Last Used: Today
----------------------------------------------------------------------
Name: iCloud Keychain
Created: December 18, 2023
Last Used: July 10, 2025
----------------------------------------------------------------------
Name: Chrome on Mac
Created: November 15, 2023
Last Used: Never
----------------------------------------------------------------------
```

{% endtab %}

{% tab title="DotNet CLI" %}
指定アカウントに登録済みの認証情報を一覧表示し、認証器の種類、認証情報ID、作成日、最終利用日を確認できます。

CLIへのログインが必要です。

**例:**

```
My Vault> biometric list
Listing Windows Hello biometric credentials...


    #  Friendly Name  Provider                Created           Last Used         Status
  ---  -------------  ----------------------  ----------------  ----------------  ------
    1  Windows Hello  Windows Hello           2025-10-10 19:41  2025-10-10 19:42  Active
    2  Windows Hello  Windows Hello           2025-10-29 12:59  2025-10-29 14:14  Active
```

{% endtab %}
{% endtabs %}

### 認証情報検証コマンド <a href="#verify-credential-command" id="verify-credential-command"></a>

保存済みの認証情報によるセッション認証に使います。生体認証ログイン時も同じ処理です。

{% tabs %}
{% tab title="PowerCommander" %}

```powershell
Assert-KeeperBiometricCredential
```

**フラグ:**

**Purpose:** `login` または `reauth`。ログイン用の認証か、ログイン状態の再確認かをサーバーに伝えます。

**PassThru:** 認証情報IDなどのコマンド出力の表示制御。既定は `false` で、その出力は表示されません。

**出力例**

```powershell
PS> Assert-KeeperBiometricCredential -Purpose vault -PassThru
Verification completed successfully!

Name                           Value
----                           -----
Username                       <username>
Message                        Windows Hello authentication with Keeper completed successfully
EncryptedLoginToken            {}
Purpose                        vault
CredentialId                   ....RRR2nPv78NMuM
Success                        True
IsValid                        True

```

{% endtab %}

{% tab title="Python CLI" %}

```sh
My Vault> biometric verify
```

**フラグ:**

**--purpose:** `vault` または `reauth`。目的の指定 (省略可)

**出力例:**

```
Please complete biometric authentication...

Biometric Authentication Verification Results:
==================================================
Status: SUCCESSFUL
Purpose: LOGIN
Login Token: Received

Your biometric authentication is working correctly!
==================================================
```

{% endtab %}

{% tab title="DotNet CLI" %}
保存済みの認証情報によるセッション認証に使います。生体認証ログイン時も同じ処理です。

**例:**

```bash
My Vault> biometric verify
Verifying Windows Hello authentication for '<user_email>' (purpose: vault)...
Windows Hello verification successful.

My Vault> biometric verify --purpose=login
Verifying Windows Hello authentication for '<user_email>' (purpose: login)...
Windows Hello verification successful.
```

{% endtab %}
{% endtabs %}

### 認証情報登録解除コマンド <a href="#unregister-credential-command" id="unregister-credential-command"></a>

Keeper上の指定した暗号認証情報を無効化します。無効化後、その認証情報はユーザーへの紐づけとして受理されなくなります。

{% tabs %}
{% tab title="PowerCommander" %}

```powershell
Unregister-KeeperBiometricCredential -CredentialId <credentialId> -PassThru
```

**フラグ:**

**CredentialId:** 無効化する認証情報ID。省略時はすべてが対象

**PassThru:** コマンド出力の表示制御。既定は `false` で技術的な詳細は返しません。指定すると削除した認証情報の詳細を確認できます。

**出力例 :**

```powershell
PS>Unregister-KeeperBiometricCredential -PassThru
Are you sure you want to permanently remove ALL biometric authentication for user '<username>'? (y/N): : y
Successfully unregistered passkey on server
Successfully unregistered credential for <username>@keepersecurity.com

Name                           Value
----                           -----
Username                       <username>
Message                        Biometric credentials unregistered successfully
CredentialId                   ......OfRGyfRRR2nPv78NMuM
Success                        True
```

{% endtab %}

{% tab title="Python CLI" %}

```sh
My Vault> biometric unregister
```

**フラグ:**

**--confirm:** 確認ダイアログの省略

**出力例**

```
Are you sure you want to disable biometric authentication for user 'user@example.com'? (y/n): y

Biometric authentication has been completely removed for user 'user@example.com'.
Default authentication will be used for future logins.
```

{% endtab %}

{% tab title="DotNet CLI" %}
Keeper上の生体認証認証情報を無効化します。無効化後、指定した暗号認証情報はユーザーのログインに使えなくなります。

**例:**

```bash
My Vault> biometric remove
Are you sure you want to remove Windows Hello biometric credential for '<user_email>'? (y/N): y
Biometric credential removed for user: '<user_email>'
```

{% endtab %}
{% endtabs %}

### 表示名変更コマンド <a href="#change-name-command" id="change-name-command"></a>

指定端末の表示名を変更します。

{% tabs %}
{% tab title="PowerCommander" %}
未実装
{% endtab %}

{% tab title="Python CLI" %}

```sh
My Vault> biometric update-name
```

以下の操作を対話形式で行います。

1. 利用可能な認証情報から選択する
2. 新しいフレンドリ名を入力する (最大32文字)
3. 更新を確定する

**出力例:**

```
Found 2 biometric credential(s) with friendly names

Available Biometric Credentials:
--------------------------------------------------
 1. Commander CLI (MacBook)
    Created: January 15, 2024
    Last Used: Today

 2. Commander CLI (Desktop)  
    Created: January 10, 2024
    Last Used: January 18, 2024

Select credential number (1-2): 1
Selected: Commander CLI (MacBook)

Current Name: Commander CLI (MacBook)
Enter a new friendly name (max 32 characters):
New name: Personal MacBook

Update Summary:
--------------------
Current Name:  Commander CLI (MacBook)
New Name:      Personal MacBook

Proceed with update? (y/n): y

Passkey Update Results:
==============================
Status: Success
Old Name: Commander CLI (MacBook)
New Name: Personal MacBook
Message: Passkey friendly name was successfully updated
==============================
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.keeper.io/keeperpam/jp/commander-sdk/keeper-commander-sdks/sdk-command-reference/login-commands/biometric-login-commands.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
