# CLIを使用した承認

## コマンダー方式による自動承認

KeeperのCLI/SDKプラットフォームであるコマンダーを使用すると、管理コンソールにログインしなくとも自動で管理者によるデバイス承認を実行できます。また、Keeperコマンダーが実行可能であればどのコンピュータ (Mac、PC、Linux) でも設定できます。

この方法はKeeperクラウドからの着信接続を必要としないため、入力ポートが開けない環境に適しています。この方法ではポーリングメカニズムが使用されます (送信接続のみ)。

### Keeperコマンダーをインストール

インストール手順については[こちら](/keeperpam/jp/commander-cli/commander-installation-setup.md)をご参照ください。\
\
Mac/PC/Linux用のバイナリバージョンをインストールするか、`pip3`を使用します。

### CLIを使用してデバイスを承認

keeper shellコマンドを使用してコマンダーCLIを起動します。コマンダーのバイナリをインストールした場合はそのファイルを実行します。

```
$ keeper shell
  _  __
 | |/ /___ ___ _ __  ___ _ _
 | ' </ -_) -_) '_ \/ -_) '_|
 |_|\_\___\___| .__/\___|_|
              |_|

 password manager & digital vault   
```

loginコマンドを使用して、デバイスの承認権限を持つKeeper管理者としてログインします。 コマンダーでは、マスターパスワードと2FAがサポートされています。自動化を目的として、デバイスの承認専用のKeeper管理アカウントを作成することを推奨します。 これにより、ユーザーアカウントへの何らかの変更 (強制適用ポリシーなど) によって、コマンダーの処理が中断されることがなくなります。

```
My Vault> login admin@acme-demo.com
Password: *******

```

すべてのデバイスを表示するには、device-approveと入力します。

```
My Vault> device-approve
Email               Device ID           Device Name       Client Version
------------------  ------------------  ----------------  ----------------
demo@acme-demo.com  f68de375aacdff3846  Web Vault Chrome  w15.0.4
demo@acme-demo.com  41sffcb44187222bcc  Web Vault Chrome  w15.0.4
```

特定のデバイスを手動で承認するには、以下のコマンドを使用します。

```
My Vault> device-approve --approve <デバイスID>
```

過去に正常なログインが認識されたIPからのデバイスをすべて承認するには、以下のコマンドを使用します。

```
My Vault> device-approve --approve --trusted-ip
```

IPアドレスに関係なくすべてのデバイスを承認するには、以下のコマンドを使用します。

```
My Vault> device-approve --approve
```

特定のデバイス承認リクエストを拒否するには、denyコマンドを使用します。

```
My Vault> device-approve --deny <デバイスID>
```

すべての承認リクエストを拒否するには、デバイスIDパラメータを削除します。

```
My Vault> device-approve --deny
```

シェルを終了せずに最新のデバイス承認をリロードするには、reloadコマンドを使用します。

```
My Vault> device-approve --reload
```

### X秒ごとにデバイスを自動承認

コマンダーでは、X秒ごとに承認を実行する自動化モードがサポートされています。設定するには、自動作成されたconfig.jsonファイルを変更します。このファイルは、ユーザーフォルダの.keeperフォルダ内 (Windowsでは`C:\Users\Administrator.keeper\config.json`、Mac/Linuxでは`/home/user/.keeper/config.json`) にあります。

既存のデータは変更せずに以下の行を追加します。

```json
"commands":["device-approve --reload","device-approve --approve"],
"timedelay":30
```

{% hint style="info" %}
JSONファイルでは、最後の行を除くすべての行の後にコンマが必要となります。
{% endhint %}

これでコマンダーを開く (またはkeeper shellを実行する) と、以下のように指定した時間ごとにコマンダーがコマンドを実行するようになります。

```
$ keeper shell
Executing [device-approve --reload]...
Password:
Logging in...
Syncing...

Executing [device-approve --reload]...

Email               Device ID           Device Name       Client Version
------------------  ------------------  ----------------  ----------------
demo@acme-demo.com  f68de375aacdff3846  Web Vault Chrome  w15.0.4

Executing [device-approve --trusted-ip --approve]...
2020/09/20 21:59:47 Waiting for 30 seconds
Executing [device-approve --reload]...
There are no pending devices to approve
.
.
.
```

### チームとユーザーの自動承認

上記の例と同様に、コマンダーを使用してAzure、Okta、JumpCloudなどのSCIMプロバイダによって作成されたチームおよびユーザー割り当てを自動的に承認できます。

設定するには、`team-approve`というコマンドをJSON設定ファイルに追加します。

```json
{
    "user": "admin@acme-demo.com",
    "commands": [
        "debug",
        "device-approve --reload",
        "device-approve --approve",
        "team-approve"
    ],
    "timedelay":60
}
```

### セッションの持続

Keeperコマンダーでは持続的ログインセッションがサポートされていますので、実行中はマスターパスワードでログインしたりconfigrationファイルにマスターパスワードをハードコードしたりする必要はありません。

以下はデバイス上で30日間 (最大) 持続的ログインを有効にするコマンドとなります。

```
My Vault> this-device register
My Vault> this-device persistent-login on
My Vault> this-device ip-auto-approve on
My Vault> this-device timeout 30d
My Vault> quit
```

{% hint style="info" %}
値には秒数 (例えば60秒の場合は60)、または数字と文字の組み合わせ (例えば1分の場合は1m、5時間の場合は5h、7日間の場合は7d) を使用できます。

「logout」と入力するとセッションが無効になりますのでご留意ください。コマンダーセッション終了するには「quit」します。
{% endhint %}

デバイスで持続的ログインが設定されると、ローカルフォルダ内のconfig.jsonは以下のようになります。

```
{
    "private_key": "8n0OqFi9o80xGh06bPzxTV1yLeKa5BdWc7f7CffZRQ",
    "device_token": "R2O5wkajo5UjVmbTmvWnwzf7DK1g_Yf-zZ3dWIbKPOng",
    "clone_code": "retObD9F0-WDABaUUGhP0Q",
    "user": "my_service_user@acme-demo.com",
    "server": "keepersecurity.com"
}
```

永続的ログインについてはコマンダーの資料の[設定ページ](/keeperpam/jp/commander-cli/commander-installation-setup/configuration.md)をご参照ください。

Keeperコマンダーを使用して自動化コマンドをカスタマイズする方法は数多くありますので、詳細については[コマンダーの資料](/keeperpam/jp/commander-cli/overview.md)をご参照ください。


---

# Agent Instructions: 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:

```
GET https://docs.keeper.io/sso-connect-cloud/jp/device-approvals/commander-cli.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
