台帳の沈黙を確認する
リースと認証情報のイベントにおける急増、スパイク、沈黙を台帳から読み取り、独自のスケジューラーからチェックを実行します。
watchdog.check
リースと認証情報のイベントにおける急増、スパイク、沈黙を台帳から読み取り、独自のスケジューラーからチェックを実行します。
watchdog.check侵害されたコーディネーターは、大量に発行しないかもしれません。発行したことを書き込むのをやめるかもしれません。ウォッチドッグはコーディネーターのスナップショットではなく台帳を読み、リースの付与と認証情報の発行について検出結果を出します。
サービスは状態を保持しないため、呼び出しの間にベースラインを持たず、スケジュールもされません。検出結果を返すだけで、何も送信しません。イベントがまったく書き込まれない場合、それを示すのはwent-silentの検出結果だけで、それも他のトラフィックが続いている間に限ります。
コードはキーをINTRAMEDIAL_KEYから読み取ります。キーはシェルやシークレットストアに保管し、コミットするファイルには入れないでください。サインインした人が必要な呼び出しにはキーを使えず、コンソールが実行します。
ルートに必須の入力はありません。findings、scannedのイベント数、backgroundの件数が返ります。
認証情報ファミリーのwent-silentの検出結果。
{
"at": "2026-11-01T09:15:00.000Z",
"findings": [
{
"code": "went-silent",
"family": "credential",
"actor": null,
"observed": ,
: ,
:
}
],
: ,
: ,
: { : [], : [, ] }
}watchdog.checkwatchdog-checkcurl -sS https://api.intramedial.com/api/v1/acp/watchdog/check \
-H "Authorization: Bearer $INTRAMEDIAL_KEY"const res = await fetch("https://api.intramedial.com/api/v1/acp/watchdog/check", {
headers: { Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`, },
});
console.log(res.status, await res.json());import os, requests
res = requests.get(
"https://api.intramedial.com/api/v1/acp/watchdog/check",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
timeout=30,
)
print(res.status_code, res.json())検出結果は、rate-spike(最新のバケットが過去のバケットの中央値の4倍以上)、burst(1つのアクターが5,000 ms以内に1つのファミリーのイベントを10件発生させた)、went-silent(他の台帳イベントが3件以上届く間に、あるファミリーが15分間存在しなかった)のいずれかです。静かな台帳では、どれも出ません。
nowMsと、quietMsなどのtuningオブジェクトを送ると、固定のクロックに基づいて判定されます。それらはその呼び出しにだけ適用され、保存されません。
{
"nowMs": 1793523600000,
"tuning": { "quietMs": 600000 }
}チェックを自動で呼び出すものはなく、誰にも通知しないため、cronから実行し、検出結果をチームが見る場所へ送ってください。サービスは状態を保持しないため、各呼び出しは、その時点の台帳に基づいて判定されます。
# crontab -e: every 15 minutes. Nothing else calls the check, and it sends nothing itself.
*/15 * * * * curl -sS https://api.intramedial.com/api/v1/acp/watchdog/check -H "Authorization: Bearer $INTRAMEDIAL_KEY" | jq -e '.findings | length == 0' > /dev/null || echo "watchdog finding"転載元の資料: /docs/watchdog-check
台帳は追記専用で、Merkleルートのもとでシールされます。エントリの時刻はIntramedial自身のクロックによるもので、署名付きバンドルは公開鍵を使ってオフラインで確認できます。
ロールのリースを保持し、プレーンを通じてそれを引き受けて短命の認証情報を得て、使用し、リースを解放します。
iam.assumecoordination.leaseそれぞれに完全性の宣言を付けた9つのデータセットを送り、リソースをobserveからenforceに移行するための8つの指標と順位付けされた推奨事項を読み取ります。
conflict.audit-latestcoordination.haltでエージェントを停止し、受け入れがquarantineを返すようにし、それを確認し、安全になったら停止を解除します。
coordination.haltcoordination.quarantineレシピ集にレシピを追加したときだけ、短いメールを1通。ほかのメールは送らず、どのメールからも配信停止できます。
アカウントは不要です。attestルートで7日間に35回まで呼び出せ、レシートはテストレシートとして明示されます。続けたくなったら、そのときに登録してください。