# 高度なポリシータイプ

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FuxrVg0zyIjVPY5SEbfvp%2Fimage.png?alt=media&#x26;token=919497d2-027c-4af5-9a0f-495fcb1cde62" alt=""><figcaption></figcaption></figure>

ポリシーフォームの**Advanced** **Mode**では、ポリシーの**生のJSON**を表示・編集できます。標準のフォーム項目にない設定が必要なとき、またはポリシー内部の `PolicyType` を直接指定する必要があるときに使います。

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FQ9AjyzTwmx0E4QLlj9YM%2Fimage.png?alt=media&#x26;token=b38cd694-06cc-42a0-b2ca-25a270c37b42" alt=""><figcaption></figcaption></figure>

### Advanced Modeを使う場合

次のような作業をするときに、Advanced Modeを使います。

* UIで選べないタイプのポリシーを設定する (例: `SettingsUpdate`、`JobUpdate`、`HttpAccess`、`Custom`)
* 構造化された構成ペイロードを書く (例: エンドポイント側が解釈するJSON文字列)
* 標準のポリシーエディターにないフィールドを追加または変更する

### JSONに含まれる内容

ポリシータイプやプラットフォームによって細部は異なりますが、JSONには通常、次のような項目が含まれます。

* **ポリシーのメタデータ**
  * 名前、説明、識別子
* **ターゲティング**
  * ポリシーが適用されるユーザー、マシン、アプリケーション、プラットフォーム、コレクション
* **ポリシータイプ**
  * エージェント上でのポリシーの評価の仕方を表す `PolicyType` フィールド
* **ポリシー構成**
  * そのポリシータイプ向けの設定をまとめたオブジェクトが1つ以上 (構成をJSONで渡すタイプでは、多くの場合 `Extension` オブジェクト)

### JSONの変更がポリシーに与える影響

Advanced Modeでの編集によって、次のようなことが起こり得ます。

* エンドポイント側でのポリシーの解釈が変わる (例: `PolicyType` の変更)
* 適用や処理のためにエンドポイント側が必要とする構成が追加される
* 標準UIの欄で入れた値が上書きまたは置き換わる (ポリシーによって異なる)

JSONが実際に効く定義になるため、設定ファイルと同様に慎重に扱うことが重要です。小さな誤りでも、ポリシーが想定どおり適用されないことがあります。

### Advanced Modeを安全に使うための手順

1. 標準UIで利用できる任意のポリシータイプからポリシーを作成します (有効なベース構造が得られます)。
2. 先にUIで**ターゲティング**を設定します (コレクション/ユーザー/マシン/アプリ/プラットフォーム)。
3. **Advanced**タブを開きます。
4. JSON全文をコピーし、安全な場所に保存します (必要なら元に戻せるようにします)。
5. 必要最小限の変更だけを行います。
   * `PolicyType` を希望の値に設定します
   * 必要な構成オブジェクトを追加または更新します (例: `Extension`)
6. ポリシーを保存します。
7. 小さなテスト範囲で挙動を確認してから、適用範囲を広げます。

### 主な用途

### 設定の更新 (SettingsUpdate)

プラグインまたはエージェントの構成をエンドポイントへ反映するときに使います。よくあるパターンは次のとおりです。

* `PolicyType` を `"SettingsUpdate"` に設定します
* 更新対象を示し、書き込むJSONペイロード一式を含む `Extension` を記述します

[設定更新ポリシータイプ](/keeperpam/jp/endpoint-privilege-manager/policies/policy-types/advanced-policy-types/update-settings-policy-type.md)のページをご参照ください。

### ジョブの更新 (JobUpdate)

エンドポイント上のジョブ用JSONを追加/更新/削除するときに使います。よくあるパターンは次のとおりです。

* `PolicyType` を `"JobUpdate"` に設定します
* `JobId`、`Action`、および追加/更新時の `JobJson` ペイロード一式を含む `Extension` を記述します

[ジョブ更新ポリシータイプ](/keeperpam/jp/endpoint-privilege-manager/policies/policy-types/advanced-policy-types/update-jobs-policy-type.md)のページをご参照ください。

### HTTPアクセス (HttpAccess)

外向きウェブアクセスの規則を評価し、適用するときに使います。よくあるパターンは次のとおりです。

* `PolicyType` を `"HttpAccess"` に設定します
* URLの照合規則と、実装に必要な許可/拒否の振る舞いに関するフィールドを記述します

[HTTPアクセスポリシータイプ](https://github.com/Keeper-Security/gitbook-jp-secrets-manager/blob/main/endpoint-privilege-manager/policies/policy-types/advanced-policy-types/http-access-policy-type.md)のページをご参照ください。

### カスタム (Custom)

社内向けの特殊なワークフローや連携に使います。よくあるパターンは次のとおりです。

* `PolicyType` を `"Custom"` に設定します
* 連携先コンポーネントが要求するカスタムフィールドを追加します

[カスタムポリシータイプ](/keeperpam/jp/endpoint-privilege-manager/policies/policy-types/advanced-policy-types/custom-policy-type.md)のページをご参照ください。

### ヒントとトラブルシューティング

#### 可能ならターゲティングはUIで済ませる

ターゲティングは、可能なら標準エディターで設定します。JSONで編集するのは、追加で必要なフィールドに限ります。

#### JSONの書式を確認する

引用符、括弧、カンマの欠落は、ポリシーの保存や正しい処理を妨げることがあります。保存に失敗したら、最後に問題なく動いていたJSONに戻し、変更は少しずつ入れ直します。

#### まずは小さな範囲で試す

`PolicyType` を変えたり、新しいJSONキーを足したりするときは、適用範囲を広げる前に、小さなテスト用コレクションで試します。

#### お客様向けに内部スキーマを文書化する

ポリシータイプが特定のJSONスキーマに依存している場合 (とくに `Custom`)、次のような情報の公開を検討してください。

* 必須キーと許容値
* そのまま貼り付けて使える例のペイロード
* お客様が成功を確認する方法 (ログ、監査イベント、エンドポイントの挙動)


---

# 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/keeperpam/jp/endpoint-privilege-manager/policies/policy-types/advanced-policy-types.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.
