ポリシーのコントロール (ジョブの作成、変更、削除)
KEPMジョブの高度な構成

対象: IT管理者向けです。ジョブディレクトリ内のファイル、またはローカル管理APIを使ってジョブを作成、変更、削除する手順を説明します。
概要
作成 — JobsディレクトリにJSONファイルを置く、リクエスト本文にジョブJSONを入れてPOST /api/Jobsを呼ぶ、またはJobUpdateポリシーで Action: "Add" を使う。
変更 — ジョブJSONファイルを編集して保存 (ローダーが自動検知する場合あり)、更新済みJSONでPUT /api/Jobs/{jobId}を呼ぶ、またはJobUpdateポリシーで Action: "Update" を使う。
削除 — Jobsディレクトリからジョブファイルを削除する、DELETE /api/Jobs/{jobId} を呼ぶ、またはJobUpdateポリシーで Action: "Delete" を使う。
ジョブのidは一意である必要があります。ファイルベースの場合、ファイル名は {id}.json である必要があります。ジョブ: 定義と形式およびプラグインとジョブの登録をご参照ください。
ジョブの作成
方法 1: ファイルベース (新しい JSON ファイルを追加)
ジョブidを決めます (例:
my-maintenance-job)。ファイル名はmy-maintenance-job.jsonになります。少なくとも
id、name、enabled、およびeventsまたはschedule(または両方)、tasksを含むジョブJSONを作成します。最小構成の例:ファイルを保存します。アプリケーションルート配下の
Jobs/my-maintenance-job.json(例:C:\Program Files\KeeperPrivilegeManager\Jobs\my-maintenance-job.json)。JSON内のidがファイル名 (.jsonなし) と一致していることを確認します。ジョブの読み込み — ジョブサービスが Jobs ディレクトリを自動再スキャンする場合があります。そうでなければエージェントを再起動するか (製品が対応していれば) リロードをトリガーします。スケジュールまたはイベントに従いジョブが実行されます。
方法 2: API (POST)
事前検証 (任意):
POST /api/Jobs/validate本文: 完全なジョブ JSON。検証エラーを修正します。ジョブを作成:
POST /api/Jobs本文: 上記と同じ構造の完全なジョブ JSON。 認証: Admin (昇格済みスクリプトから、または必要な証明書で)。サービスがジョブを登録します。実装によっては JSON を Jobs ディレクトリへ書き出すこともあります。その後、トリガーおよび実行でジョブが利用可能になります。
例 (PowerShell、概念上):
ジョブの変更
方法 1: ファイルベース (JSON ファイルを編集)
ジョブファイル (例:
Jobs/my-maintenance-job.json) をエディタで開く。必要なフィールドを変更する (例:
schedule.intervalMinutes、tasks、enabled、name)。idは同じにし、ファイル名は{id}.jsonのままにする。保存する。ジョブローダーが自動で変更を取り込む場合があります。そうでなければエージェントの再起動またはジョブのリロード (利用可能な場合) を行います。
任意 — 製品がジョブ定義をキャッシュする場合、POST /api/PluginSettings/revert-allまたは文書化された「ジョブのリロード」手順を実行し、実行中のサービスが新しい定義を使うようにします。
方法 2: API (PUT)
現在のジョブを取得 (任意):
GET /api/Jobs/my-maintenance-jobで完全な定義を確認。JSON を編集する (スケジュールの変更、タスクの追加/削除、
enabledをfalseにするなど)。更新:
PUT /api/Jobs/my-maintenance-job本文: 完全な更新後ジョブJSON。 認証: Admin。サービスがジョブを更新します。以降の実行は新しい定義を使います。
例 (PowerShell、概念上):
ジョブの削除
方法 1: ファイルベース (ファイルを削除)
アプリケーションルートから
Jobs/{job-id}.json(例:Jobs/my-maintenance-job.json) を削除する。ファイルがなくなると (再スキャン後) ジョブサービスが実行を止める場合があります。そうでなければエージェントを再起動し、ジョブの登録を解除する。
方法 2: API (DELETE)
ジョブを削除:
DELETE /api/Jobs/my-maintenance-job認証: Admin。サービスがジョブの登録を解除します。実装によっては Jobs ディレクトリからファイルも削除します。ジョブは以降実行されません。
例 (PowerShell、概念上):
ポリシーでジョブを作成・変更・削除する (JobUpdate)
JobUpdate構成ポリシーを使うと、エンドポイント上でジョブを作成、変更、削除できます。ポリシーは追加・更新・削除するジョブを定義し、各エージェント上のProcess Configuration Policiesジョブがこれらのポリシーを読み、Jobsディレクトリ配下のジョブファイルを書き込みまたは削除します。各マシンでファイルを編集したりAPIを呼ばずに、ダッシュボードまたはポリシーストアからジョブを展開・変更できます。
動作の仕組み
PolicyTypeを
"JobUpdate"とし、Extensionに以下を含むポリシーを作成します。JobId — ジョブ id (例:
my-maintenance-job)。プロセッサはJobs/{JobId}.jsonに書き込みまたは削除します。Action —
"Add"(作成)、"Update"(変更)、"Delete"(削除)。JobJson — AddおよびUpdateのときのみ必須。完全なジョブJSON (ファイルまたはAPIと同じ構造)。Deleteのときは省略。
適切なコレクションまたはマシンへポリシーを展開します (例: Keeper管理コンソールまたはポリシーストアから)。
各エージェントでProcess Configuration Policiesジョブが実行されます (スケジュール、またはPOST /api/Jobs/{jobId}/runでトリガー)。すべてのJobUpdateポリシーを検出し、それぞれに対応するジョブファイルを
Jobs/配下で追加、更新、または削除します。エージェント上のジョブローダーが新規または変更されたファイルを取り込みます (削除後はジョブが見えなくなります)。多くの場合エージェントの再起動は不要です。ジョブ定義をキャッシュする場合は、リロードまたは再起動が必要になることがあります。
ポリシーでジョブを作成する (Action: Add)
Extension付きのJobUpdateポリシーを作成します。
JobJsonは上記のような完全なジョブオブジェクトでも、JSONを格納した文字列でも構いません。JobJson内のidはJobIdと一致させます。ポリシーを展開し、エージェントでProcess Configuration Policiesを実行するとジョブファイルが作成されます。
ポリシーでジョブを変更する (Action: Update)
同じPolicyType "JobUpdate" とExtensionでActionを "Update"、同じJobId、JobJsonに完全な更新後のジョブJSON (変更していないフィールドも含む) を設定します。プロセッサはジョブファイル全体を置換します。ポリシーを展開してProcess Configuration Policiesを実行するとジョブファイルが更新されます。
ポリシーでジョブを削除する (Action: Delete)
Extension付きのJobUpdateを使います。
DeleteではJobJsonは不要です。ポリシーを展開してProcess Configuration Policiesを実行すると Jobs/my-maintenance-job.json が削除されます。ジョブprocess-configuration-policiesは保護されており、JobUpdateポリシーでは削除できません。
まとめ (ポリシー方式)
作成
JobId、Action: "Add"、JobJson (完全なジョブ JSON)
Jobs/{JobId}.json を書き込み
変更
JobId、Action: "Update"、JobJson (完全な更新後ジョブ JSON)
Jobs/{JobId}.json を上書き
削除
JobId、Action: "Delete" (JobJson なし)
Jobs/{JobId}.json を削除
構成ポリシーとプロセッサの実行方法の詳細は、ポリシーで設定を適用または変更するをご参照ください。
クイックリファレンス
作成
完全なジョブJSONで Jobs/{id}.json を追加。JSONの id をファイル名と一致させる
本文にジョブJSONを入れたPOST /api/Jobs (Admin)
JobUpdate ポリシー: Action "Add"、JobId、JobJson。Process Configuration Policiesを実行
変更
Jobs/{id}.json を編集。id とファイル名はそのまま。保存
PUT /api/Jobs/{jobId} に完全な更新JSON (Admin)
JobUpdate ポリシー: Action "Update"、JobId、JobJson (完全)。Process Configuration Policiesを実行
削除
Jobs/{id}.json を削除
DELETE /api/Jobs/{jobId} (Admin)
JobUpdate ポリシー: Action "Delete"、JobId。Process Configuration Policiesを実行
検証
—
作成/更新前に本文へジョブJSONを入れた POST /api/Jobs/validate
—
1回実行
—
POST /api/Jobs/{jobId}/run (Admin)
—
APIにはHTTPS (例: https://127.0.0.1:6889) とAdmin認証を使います。エンドポイント一覧はローカルエンドポイントをご参照ください。
最終更新

