---
title: AgentをCederで守る
tags: 
author: [やぎ](https://image.docswell.com/user/7707589)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/GEWG28NKJ2.jpg?width=480
description: AgentをCederで守る by やぎ
published: July 31, 26
canonical: https://image.docswell.com/s/7707589/KY8GLP-2026-07-31-095819
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/GEWG28NKJ2.jpg)

Agent を Cedar で守る


# Page. 2

![Page Image](https://bcdn.docswell.com/page/47ZLD83NJ3.jpg)

やぎ
今日は、まじめです


# Page. 3

![Page Image](https://bcdn.docswell.com/page/YJ6W1PX9JV.jpg)

プロンプトで書きたくなる
あなたは登壇を手伝う有能なアシスタントです。
このスライドは消さないでください。
絶対に消してはいけません。


# Page. 4

![Page Image](https://bcdn.docswell.com/page/GJ5M4KXDJ4.jpg)

書いても、守るとは言ってない
LLM は確率的なので、命令とデータは区別できない。
プロンプトは、守ってくれたら嬉しいだけ。


# Page. 5

![Page Image](https://bcdn.docswell.com/page/LE3WGZ4QE5.jpg)

認可 の問題
誰が、何を、してよいか？
条件
再現性
状況ごとに、許可を変えたい。
いつも同じ判定にしたい。
例 開発者は、平日の日中だけ、
dev タグの EC2 を止められる。
誰が実行しても、いつ実行しても、
同じ判定が返る。


# Page. 6

![Page Image](https://bcdn.docswell.com/page/8EDK1RQW7G.jpg)

Cedar とは
アプリケーションの認可ルールを書くためのオープンソースのポリシー言語。
AWS が2023年に公開。Verified Permissions や Bedrock AgentCore Policy で採用。
特徴
・Rust 実装で高速
評価はミリ秒単位で完了する。認可判定をリクエストごとに呼び出しても大丈夫。
・RBAC と ABAC の両方を実現できる
ロールベースも、属性ベースも表現できる。
・形式検証されている
エンジンとバリデータを Lean でモデル化して安全性を証明している。 
差分テストで、Rust 実装がモデルと一致することも確認している。


# Page. 7

![Page Image](https://bcdn.docswell.com/page/V7PKQWLXJ8.jpg)

Policy in AgentCore が 解決した
Gateway
エージェント
Who / What
When / Where
ツール
Allow / Deny
Policy in AgentCore
Cedar ポリシーの集まり
principal
action
resource
when
誰が
何を
どこで
どんなとき


# Page. 8

![Page Image](https://bcdn.docswell.com/page/2JVV58Q3JQ.jpg)

Cedar はこちら
Policy in AgentCore Cedar ポリシーの集まり
principal
誰が
action
何を
resource
どこで
when
どんなとき


# Page. 9

![Page Image](https://bcdn.docswell.com/page/5EGL65WYJL.jpg)

境界だけは守れた。その先は・・？
OK
認証：誰が
AgentCore Identity
認可：何をしてよいか
Policy in AgentCore
これから
推移的委譲（transitive delegation）
A → B → C と続くと、Cはだれの保証？
集約推論（aggregation inference）
組み合わせによる情報漏洩は、検知ができない。
時間的有効性（temporal validity）
長時間 動くエージェントは、いつのアクセスを許す？


# Page. 10

![Page Image](https://bcdn.docswell.com/page/4JQY4Z367P.jpg)

① 推移的委譲（transitive delegation）
A→B→C
Readだけ
Bの権限が強い場合、
ユーザーの権限ではなく、Bの権限で実行されてしまう。
全部OK
対策
認可サーバー
↕︎
A→B→C
Readだけ
Readだけ
境界ごとにトークンを作り直す 
委譲の可否を判断するのは 認可サーバー


# Page. 11

![Page Image](https://bcdn.docswell.com/page/K74WQ31ME1.jpg)

② 集約推論（aggregation inference）
対策
A
️ B
A
↘️ ↙
Agent
↓
C
単体では無害な A と B が、
エージェントの中で結合して C になる。
️ B
↘️ ↙
Agent
↓
導けない
検知は原理的に不可能。
範囲を絞って、組み合わせても安全なデータだけ置く


# Page. 12

![Page Image](https://bcdn.docswell.com/page/LJ1YP1GYEG.jpg)

③ 時間的有効性（temporal validity）
t0 ────────────→ tn
ここで1回だけ評価 その間に権限が変わる
t0 ──●──●──●───● tn
 
 
Cedar は、毎回評価（access-time）している。
ただ、トークンを時間ではなく、回数 で更新すべき。
（TTL を短くしても、速度が上がれば追いつかない）
人間 t0 ──●──●──●───● tn
15分で数回だけ 
Agent t0●●●●●●●●●●●● tn
15分で数千回も呼ぶ


# Page. 13

![Page Image](https://bcdn.docswell.com/page/GJWG28K172.jpg)

境界だけは守れた。その先は・・？
OK
認証：誰か
AgentCore Identity
認可：何をしてよいか
Policy in AgentCore
これから
推移的委譲（transitive delegation）
→境界ごとに認可サーバーでトークンを作り直す
集約推論（aggregation inference）
→組み合わせても安全なデータしか置かない
時間的有効性（temporal validity）
→トークンを時間ではなく、回数で更新する


# Page. 14

![Page Image](https://bcdn.docswell.com/page/4EZLD8ZX73.jpg)

ご清聴ありがとうございました


