> 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-cli/command-reference/enterprise-management-commands/compliance-commands.md).

# コンプライアンスコマンド

## 概要 <a href="#about" id="about"></a>

{% hint style="info" %}
[コンプライアンスレポート作成](/enterprise-guide/jp/compliance-reports.md)のアドオンが必要です
{% endhint %}

コンプライアンスレポートを使用すると、アカウント管理者は、組織全体のレコードおよび認証情報に対するアクセス権限をオンデマンドで可視化でき、各種規制への対応を支援できます。

コマンダーを使用すると、コンプライアンスレポートのスケジュール設定および自動実行が可能で、結果をCSVまたはJSON形式でエクスポートできます。

コンプライアンスレポートの詳細については、以下のドキュメントをご参照ください。

{% embed url="<https://app.gitbook.com/s/eJwa6ByNJ2qindnPknCW/compliance-reports>" %}

## compliance-reportコマンド <a href="#compliance-report-command" id="compliance-report-command"></a>

`compliance-report` コマンドを使用すると、Keeper管理コンソールで行うのと同じようにレポートを実行できます。ノード、ユーザー、タイトル別のレコード権限の表示、所有するレコードまたは共有レコードによるフィルタ、結果のファイルへの出力ができます。

### キャッシュ <a href="#cache" id="cache"></a>

`compliance-report` コマンドは、複数のレポートクエリのパフォーマンス向上のためにキャッシュが利用されます。

**このため、`compliance-report` の最初の呼び出しでは、システムが必要なデータを取得するまでに数分かかる場合があります。**

この間、コマンダーには実行中の手順を説明するメッセージが表示されます。

![](/files/swcDbElVYFM9pJsZHoX4)

また、`-r` フラグを使用すると、キャッシュを手動で再構築できます。コンプライアンスデータの最新の変更を反映させる場合に実行します。

`compliance-report -r`

{% hint style="info" %}
既定では (生成されるレポートにできる限り最新かつ正確なデータを反映させるため)、**1日を超えて保持されているローカルキャッシュは、前述のプロセスに従って自動的に更新されます**。そのため、同じ `compliance-report` コマンドを前回実行してから1日以上経過している場合は、初回実行時と同様にデータ取得処理が再度実行され、完了までに時間がかかることがあります (前述の初回呼び出しの説明をご参照ください)。

この既定の動作を手動で変更する方法については、以下のセクションをご参照ください。
{% endhint %}

一方で、前述の自動キャッシュ更新を行わず、既存のキャッシュデータのみを使用してレポートを生成することもできます。この場合、結果は最新ではない可能性がありますが、キャッシュ再構築に伴う時間のかかる読み込み処理を回避できます。その場合は、`-nr` または `--no-rebuild` フラグを使用します。前回のコマンド実行やキャッシュ更新以降、関連データに大きな変更がないと判断できる場合に、コンプライアンスデータへ迅速にクエリを実行する目的で使用します。

`compliance-report -nr`

**キャッシュの削除**

`--no-cache` フラグを使用すると、コンプライアンスレポートのキャッシュを手動で削除できます。実行すると、マシンに保存されているコンプライアンスレポートのキャッシュ情報がすべて削除されます。

`compliance-report --no-cache`

または、コマンダーを実行した場所のローカルディスク上にあるキャッシュファイルを削除することもできます。暗号化されたコンプライアンスデータが保存されている `sox_<ID>.db` というファイルを削除してください。

### フィルタ指定時のクエリ性能 <a href="#filtered-query-performance" id="filtered-query-performance"></a>

`--username` または `--team` フィルタを使用した場合、更新されるのは組織全体ではなく対象ユーザーのキャッシュデータのみです。この動作は、`compliance-report` および `compliance record-access-report` の両方に適用されます。

### フィルタ <a href="#filters" id="filters"></a>

コンプライアンスレポートは、ノード、ユーザー、役職に加え、レコードの状態 (共有済み、削除済み、有効) でフィルタリングできます。

<details>

<summary>ノードでフィルタ</summary>

**形式**

`--node [NODE NAME or ID]` または `-n [NODE NAME or ID]`

**例**

`compliance-report --node "Chicago Office"`

**概要**

指定したノード内のKeeperボルトに存在するレコードのみに結果を絞り込みます。既定では、エンタープライズのルートノードが対象となり、すべてのボルトが検索されます。

</details>

<details>

<summary>ユーザー名でフィルタ</summary>

**形式**

`--username [USER EMAIL]` または `-u [USER EMAIL]`

**例**

`compliance-report --username "Craig@keepersecurity.com"`

**概要**

指定したユーザー名のKeeperボルトに存在するレコードのみに結果を絞り込みます。

</details>

<details>

<summary>レコードでフィルタ</summary>

**形式**

`--record [UID or TITLE]` または `-r [UID or TITLE]`

**例**

`compliance-report --record "Twitter Login"`

**概要**

指定したUIDまたはタイトルを持つレコードのみに結果を絞り込みます。

</details>

<details>

<summary>URLでフィルタ</summary>

**形式**

`--url [URL]`

**例**

`compliance-report --url "https://www.twitter.com"`

**概要**

指定したURL値を持つレコードのみに結果を絞り込みます。

</details>

<details>

<summary>役職でフィルタ</summary>

**形式**

`--job-title [TITLE]` または `-jt [TITLE]`

**例**

`compliance-report --job-title "Engineers"`

**概要**

指定した役職を持つユーザーが所有するKeeperボルト内のレコードのみに結果を絞り込みます。

</details>

<details>

<summary>共有レコードでフィルタ</summary>

**形式**

`--shared`

**例**

`compliance-report --shared`

**概要**

共有されているレコードのみを表示

</details>

<details>

<summary>削除済みレコードでフィルタ</summary>

**形式**

`--deleted-items`

**例**

`compliance-report --deleted-items`

**概要**

削除済みのレコードのみを表示 (`--active-items` フラグとは併用不可)

</details>

<details>

<summary>アクティブなレコードでフィルタ</summary>

**形式**

`--active-items`

**例**

`compliance-report --active-items`

**概要**

有効なレコードのみを表示 (`--deleted-items` フラグとは併用不可)

</details>

<details>

<summary>チームでフィルタ</summary>

*コマンダーバージョン16.7.5以降が必要です*

**形式**

`--team <TEAM NAME>`

**例**

`compliance-report --team "Engineering"`

**概要**

指定したチームに所属するユーザーのみを表示

</details>

<details>

<summary>パスワードの経過日数データを含める</summary>

**形式**

`--aging`

**使用例**

`compliance-report --aging`

`compliance-report --aging --username "user@company.com"`

`compliance-report --aging --team "Engineering" --format csv --output "./aging_report.csv"`

**概要**

レポートに Created、Last Modified、Last Password Change、Last Rotationの各列を追加します。作成以降一度もパスワードが変更されていないレコードでは、Last Password Change に `---` が表示されます。

このフラグは、既存の各種フィルタ (`--username`、`--team`、`--node`、`--job-title` など) と組み合わせて使用でき、対象を絞り込んだ経過日数レポートを生成できます。

{% hint style="info" %}
`--aging` を初めて実行する場合、パスワード変更のイベント履歴が取得・キャッシュされるため、追加の時間がかかることがあります。2回目以降の実行ではキャッシュされたデータが使用されます。ただし、キャッシュが古い場合や `-r` によって手動で再構築した場合は、再度データ取得が行われます。
{% endhint %}

</details>

<details>

<summary>複数のフィルタをまとめて使用</summary>

フィルタフラグを組み合わせると、高度なレポートを作成できます。

**例**

`compliance-report --node "Chicago" --job-title "Managers" --shared`

この例では、ChicagoノードのManagersが所有するボルトから共有されたレコードのレポートが表示されます。

**同じフィルタを複数回使用することもできます**

`compliance-report -u "user1@example.com" -u "user2@example.com"`

この例では、「<user1@example.com>」と「<user2@example.com>」の両方のユーザーに属するレコードが取得されます。

**`--username` と `--team` を同時に使用する場合**

`--username` と `--team` を同時に指定した場合、**OR条件**として処理されます。つまり、指定したユーザー**または**指定したチームのメンバーに該当するレコードがレポートに含まれます。

`compliance-report --username "user@company.com" --team "Engineering"`

この例では、`user@company.com` が所有するレコード**または** `Engineering` チームのメンバーが所有するレコードが返されます。

**概要**

指定したノード内のKeeperボルトに存在するレコードのみに結果を絞り込みます。

</details>

### ファイルへの出力 <a href="#outputting-to-a-file" id="outputting-to-a-file"></a>

コマンダーの他の多くのレポートと同様に、コンプライアンスレポートの結果はファイルに保存できます。保存するには、`--output` および `--format` オプションを使用します。

**出力**

`--output [ファイルパス]`

指定した保存先に結果が書き出されます。ファイルが存在しない場合は新規に作成されます。

**形式**

`--format [csv, json, table]`

レポート結果の出力形式を指定します。既定ではテーブル形式で出力され、整形された一覧が表示されます。その他の出力形式として、CSVおよびJSONを指定できます。

{% hint style="info" %}
`--format` フラグのみを指定し、`--output` フラグを指定しない場合は、指定した形式でコマンダー上に結果が表示されます。
{% endhint %}

<details>

<summary>結果をCSV (Excel) に保存</summary>

コンプライアンスレポートの結果をExcelで表示可能なCSVファイルとして保存するには、以下のフラグを使用します。

`--format csv` および `--output /path/to/file.csv`

**例**

`compliance-report --username "Craig@keepersecurity.com" --format csv --output "./craig_compliance.csv"`

結果は、指定した場所にcsv形式のファイルとして保存されます。

</details>

<details>

<summary>結果をJSONに保存</summary>

コンプライアンスレポートの結果をコードやスクリプトで使用するJSONファイルとして保存するには、以下のフラグを使用します。

`--format json` および `--output /path/to/file.json`

**例**

`compliance-report --username "Craig@keepersecurity.com" --format csv --output "./craig_compliance.json"`

結果は、指定した場所にjson形式のファイルとして保存されます。

</details>

## complianceコマンド <a href="#compliance-command" id="compliance-command"></a>

コマンダーでは、カスタムレポートの生成に加えて、`compliance` コマンドで特定のレポートも生成できます。これらは `compliance` コマンドのサブコマンドを呼び出して実行します。

`compliance` コマンドでは、以下のサブコマンドが利用できます。

* [`team-report`](#compliance-team-report)
* [`record-access-report`](#compliance-record-access-report)
* [`summary-reports`](#compliance-summary-report) または [`stats`](#compliance-summary-report)
* [`shared-folder-report`](#compliance-shared-folder-report)

詳細については、各サブコマンドのセクションをご参照ください。

{% hint style="info" %}
すべての compliance サブコマンドは、上記の [compliance-report のフィルタ](#filters) で取り扱った `--username` (`-u`)、`--team`、`--node`、`--rebuild` (`-r`)、`--no-rebuild` (`-nr`)、`--no-cache` (`-nc`) フラグに対応しています。これらの共通フラグは、すべてのサブコマンドで同様に動作します。
{% endhint %}

### Compliance Team Report <a href="#compliance-team-report" id="compliance-team-report"></a>

共有フォルダは個人にもチームにも共有できます。コンプライアンスレポートには、各チームがこれらの共有フォルダに対して持つアクセス権に関するレポートを表示できます。

コンプライアンスチームレポートを実行するには、コマンダーで以下のコマンドを使用します。

`compliance team-report`

このレポートでは、前述の[コンプライアンスレポートのキャッシュ](#cache)が使用されます。

このレポートには、共有フォルダにアクセスできる各チームと、その共有フォルダに対するアクセス権の種類が表示されます。

```
My Vault> compliance team-report
Team Name    Team UID                Shared Folder Name  Shared Folder UID       Permissions            Records
-----------  ----------------------  ------------------  ----------------------  -------------------  ---------
Engineering  qLoY4YptKEs30VK_D8px1A  Devops Secrets      YZaagndh8CQToqlhuvv95Q  Read Only                    1
Marketing    XWLBkyN_HnwJKA4BYWrByw  Website Logins      -IcFcSgrFPEW9aP1-noiWw  Can Share, Can Edit          2
```

{% hint style="info" %}
レポートにチームの所属情報 (各チームにどのユーザーが所属しているか) を含める場合は、オプションの `--show-team-users`/`-tu` フラグを指定します。

`compliance team-report -tu`

上記のコマンドでは追加フラグを指定しているため、生成されるレポートに「Team Users」という列が追加されます。この列には、該当する各チームのメンバーのユーザー名が表示されます。
{% endhint %}

`--team` でフィルタする場合、`--resolve-teams` フラグを指定すると、チームに直接共有されたフォルダに加え、チームメンバーが個別に含まれている共有フォルダも対象に含められます。

`compliance team-report --team "Engineering" --resolve-teams`

### Compliance Record-Access Report <a href="#compliance-record-access-report" id="compliance-record-access-report"></a>

コンプライアンスレコードアクセスレポートには、指定したユーザーが過去にアクセスしたレコード、または現在アクセス可能な組織内のレコードの一覧と、その他の関連情報 (使用したアプリ、IPアドレス、イベントのタイムスタンプなど) が表示されます。

コンプライアンスレコードアクセスレポートを実行し、ユーザーのレコードアクセス履歴を表示するには、コマンダーで以下のコマンドを実行します。

`compliance record-access-report --email user1@company.com`

ここで `user1@company.com` は、レコードアクセスを監査したいユーザーです。結果の出力は以下のようになります。

```
My Vault> compliance record-access-report --email user1@company.com
Vault Owner       Record UID              Record Title  Record URL     Has Attachments    In Trash    Record Owner       IP Address     Device             Last Access
----------------- ----------------------  ------------  -------------  -----------------  ----------  -----------------  -------------  -----------------  -------------------
user1@company.com LDUw6M6jNcUmEkuArp4LXQ  User1-Login   domain.com     False              False       user1@company.com  172.158.8.18   Web App 16.10.2    2023-05-30 17:04:23
                  5U4DK0MmJ5ZVui-o6JcDQw  User2-Login   google.com     True               False       user2@company.com  172.158.8.18   Web App 16.10.2    2023-01-24 17:04:18
                  MMhu6YQ5gKtYbgPiVD41UQ  User3-Login   hotmail.com    False              False       user3@company.com  172.158.8.18   Web App 16.10.2    2022-11-31 14:35:23
```

同じユーザーが現在アクセス可能なすべてのレコード (つまり、そのユーザーのボルト内に現在存在するすべてのレコード) を表示するには、以下のコマンドを実行します。

`compliance record-access-report --report-type vault --email user1@company.com`

上記コマンドの出力は前の例とほぼ同様ですが、現在そのユーザーのボルトに存在しないレコードは除外されます。一方で、そのユーザーがこれまで一度もアクセスしていないレコードが含まれる場合があります。

### ボルト全体を把握するための推奨ワークフロー <a href="#recommended-workflow-for-complete-vault-visibility" id="recommended-workflow-for-complete-vault-visibility"></a>

ユーザーがアクセス可能なすべてのレコード (所有レコードおよびそのユーザーのボルトに共有されたレコード) をユーザー単位で完全に把握するには、以下の2つのコマンドを実行し、ユーザーと `Record UID` の両方で結果をマージします。

`compliance report --username user1@company.com --format json --output "./user1_owned.json"`

`compliance record-access-report --report-type vault --email user1@company.com --format json --output "./user1_vault.json"`

`compliance report.username == rar.vault_owner` かつ `record_uid` が一致する行で結合します。

所有レコードの取得元として `compliance report` を、共有関係の取得元として `compliance record-access-report --report-type vault` を使用します。

{% hint style="warning" %}
コマンダーのバージョンによっては、`--report-type vault` ですべての共有レコードが含まれない場合があります。ボルト全体を把握するには、上記の推奨ワークフローをご利用ください。
{% endhint %}

複数ユーザーに対してこのレポートを実行する場合は、1) 各ユーザー名/IDを個別に指定する、2) すべてのユーザーを対象とする `@all` 省略形を使用する、3) ユーザーを指定しない (すべてのユーザーを対象とするより簡潔な方法) 、のいずれかを使用できます。対応する例は以下のとおりです。

`compliance record-access-report -e user1@company.com -e user2@company.com`

`compliance record-access-report --email @all`

`compliance record-access-report`

`--aging` フラグを追加すると、Created、Last Modified、Last Password Change、Last Rotation の各列を含めることができます。

`compliance record-access-report --email user1@company.com --aging`

`compliance record-access-report --email @all --aging --format csv --output "./rar_aging.csv"`

### Compliance Summary Report <a href="#compliance-summary-report" id="compliance-summary-report"></a>

コンプライアンス概要レポートには、組織内のレコードに関する集計情報が表示されます (現在は既定でレコード所有者ごとにグループ化されていますが、今後は他のエンティティによるグループ化が追加される可能性があります)。

コンプライアンス概要レポートを実行するには、コマンダーで以下のコマンドを実行します。

`compliance summary-report`

または

`compliance stats`

結果の出力は以下のようになります。

```
My Vault> compliance summary-report

Email                             Total Items    Total Owned    Active Owned    Deleted Owned
------------------------------- -------------  -------------  --------------  ---------------
bob.loblaw@keeperdemo.io                   22             14              12                2
jose.rizal@keeperdemo.io                   49             42              33                9
tyrion.lannister@keeperdemo.io              3              3               3                0
doogie.howzer@keeperdemo.io                15              5               5                0
alan.turing@keeperdemo.io                  17             13               4                9
richard.feynmann@keeperdemo.io              4              1               1                0
TOTAL                                                     78              58               20
```

### Compliance Shared-Folder Report <a href="#compliance-shared-folder-report" id="compliance-shared-folder-report"></a>

`compliance team-report` と同様に、このコマンドは組織内のすべての共有フォルダに対して、すべてのエンティティ (チームおよび個々のユーザー) が持つアクセス権を詳細に示すレポートを出力します。

コンプライアンス共有フォルダレポートを実行するには、コマンダーで以下のコマンドを実行します。

`compliance shared-folder-report`

または

`compliance sfr`

出力は以下のとおりです。

```
My Vault> compliance sfr
Loading record information....
Loading compliance data....:
Shared Folder UID       Team UID                Team Name    Record UID              Email
----------------------  ----------------------  ------------ ----------------------  ------------------------------
y01GmuTipqHGLdd0NkM4qw                                       PG7MELDIOaNMQkDiw--JoQ  bob.loblaw@keeperdemo.io
                                                             1JDuc5ZcJDpt8SbhYnD0HA  nate.hawthorne@keeperdemo.io
YZaagndh8CQToqlhuvv95Q  qLoY4YptKEs30VK_D8px1A  Engineering  IOYb8jAmDsaIGtTwZB5Biw  samuel.clemens@keeperdemo.io
                                                                                     w.b.yeats@keeperdemo.io
-IcFcSgrFPEW9aP1-noiWw  XWLBkyN_HnwJKA4BYWrByw  Marketing    O69TWFDnPCG_dpg9wpABqg  e.hemmingway@keeperdemo.io
                        qLoY4YptKEs30VK_D8px1A  Engineering  f46BWlqg5SoWraVlEFFSDA
0qpDTAWuznWrInnednG3Xw  XWLBkyN_HnwJKA4BYWrByw  Marketing    EnqP808xakJA9hOpjhYb9A  e.hemmingway@keeperdemo.io
```

{% hint style="info" %}
前述の `compliance team-report` コマンドと同様に、このコマンドも `--show-team-users`/`-tu` フラグを指定して、必要に応じてレポートにチームメンバーシップデータを含められます。以下が使用例です。

`compliance sfr -tu`

`compliance team-report -tu` の出力とは対照的に、上記のコマンドによって生成されたレポートでは、既存の「Email」列にチームメンバーシップデータが追加され、チームに関連付けられた各ユーザー名の前に `(TU)` が付きます。
{% endhint %}

`--resolve-teams` フラグを使用すると、`--team` によるフィルタに加え、チームメンバーが個別に含まれている共有フォルダも対象に含められます。

`compliance sfr --team "Engineering" --resolve-teams`

コマンダーで使用可能なその他のレポートについては、[レポート作成のドキュメント](/keeperpam/jp/commander-cli/command-reference/reporting-commands.md)をご参照ください。


---

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

```
GET https://docs.keeper.io/keeperpam/jp/commander-cli/command-reference/enterprise-management-commands/compliance-commands.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.
