![[アップデート] Amazon Quick でエージェントのアクションを自動承認する Smart Approvals が利用可能になったので試してみた](https://devio2024-media.developers.io/image/upload/f_auto,q_auto,w_3840/f_auto,q_auto/v1790875080/eyecatch/fu4oqvi9h5yej1imliyf.png)
[アップデート] Amazon Quick でエージェントのアクションを自動承認する Smart Approvals が利用可能になったので試してみた
クラウド事業統括本部の石川です。Amazon Quick で、エージェントが実行しようとするアクションを別のレビューモデルが評価し、承認をユーザーに求めるかどうかを振り分ける Smart Approvals が利用可能になりましたので、デスクトップアプリで試してみました。
Amazon Quick のエージェントは、メール送信、レコード更新、チケット作成などのアクションをユーザーの代わりに実行できます。すべてのステップで人に承認を求めると承認疲れが起き、時間とともに監督が弱くなる傾向にあります。Smart Approvals は、この問題に対するレビューの仕組みです。classifier と呼ばれる別のレビューモデルが、対象となる各アクションをユーザーのリクエストに照らして評価します。定型的なアクションは自動で承認し、影響の大きいアクションはユーザーのレビューに回します。
Smart Approvals とは
評価の順序
公式ドキュメントでは、エージェントが提案したアクションは次の順序で評価されると説明されています。
- 既存の統制(権限、カスタム権限、ガードレール、コネクターのアクション権限、ユーザー自身の設定)でチェックする。ポリシーで拒否されたアクションは拒否のまま、人の承認が必須のアクションは必ずユーザーに回る
- 自動レビューの対象になったアクションを、Smart Approvals がユーザーのリクエストと会話に照らして評価する。低リスクでリクエストどおりのアクションは自動承認し、会話内に自動承認であることを表示する
- 組織外へのコンテンツ送信、権限の変更、コンテンツの削除や上書き、支払いなどの重大なアクションはユーザーのレビューに回す。タイムアウトなどでレビューが失敗した場合もユーザーに回る
自動承認は、レビューされたその 1 回のアクションだけに適用されます。Smart Approvals が新しいアクセス権を与えることはありません。
対象になるアクション
Smart Approvals がレビューするのは、次の 2 つの条件を両方満たすアクションだけです。
| 設定する人 | 設定箇所 | 対象になる値 |
|---|---|---|
| コネクターの作成者 | コネクターのアクション権限 | 「ユーザーの選択に任せる」(ドキュメントでの表記は Let user choose) |
| ユーザー | 自分のアクション権限 | 「毎回確認する」(ドキュメントでの表記は Ask each time。デスクトップアプリでの表示は「その都度聞いてください」) |
コネクター側が「毎回確認する」のアクションは常にユーザーに確認され、「常に許可する」のアクションは確認なしで実行されます。どちらも Smart Approvals のレビューは通りません。
アクション権限の既定値は、Write アクションがコネクター側「ユーザーの選択に任せる」/ ユーザー側「毎回確認する」、Read アクションがユーザー側「常に許可する」です。確認プロンプトには「許可」(今回だけ実行し、次回も確認する)、「信頼」(実行し、以後は確認プロンプトを表示しない)、「拒否」(実行しない)のボタンがあります。
有効化と無効化
Smart Approvals は既定で全ユーザーに対して有効です。管理者はカスタム権限プロファイルで、ユーザーごとに使用を制限できます。ユーザーはチャットの「+」メニューから自分で ON/OFF を切り替えられます。この設定はグローバルで、すべての会話と、スケジュール実行がユーザーの代わりに実行するアクションに適用されます。
カスタム権限では、AI バッジの付いた機能は AI ガバナンスカテゴリに属します。プロファイルで AI カテゴリをまとめて制限すると、このカテゴリの機能は個別に許可しない限り利用できなくなります。
ドキュメントには、必ず人の承認が必要なアクションは、自動レビューに頼らずコネクターのアクション権限で確認を必須にすることを検討するよう書かれています。
監査ログ
Smart Approvals の操作は AWS CloudTrail に記録されます。イベントソースはいずれも quicksight.amazonaws.com です。
| 操作 | イベント名 | 主な項目 |
|---|---|---|
| ユーザーが ON/OFF を切り替えた | BatchUpdatePreferencesInternal |
scope=USER、preferenceKeys=UseSmartApprovals、updatedValues=ON または OFF |
| Smart Approvals がアクションを承認した | BatchUpdatePermissionsInternal |
connectorId、actionId、approvalSource=SMART_APPROVALS |
approvalSource=SMART_APPROVALS のイベントは承認したことを示すもので、アクションが実行されたことまでは示しません。
対応クライアントとリージョン
Smart Approvals は Amazon Quick のデスクトップアプリとモバイルアプリで利用でき、Web 版では現在利用できません。リージョンは、Amazon Quick のエージェント機能がサポートされているすべてのリージョンです。
やってみた
前提条件
- AWS アカウント(Amazon Quick Enterprise エディション)
- Amazon Quick の identity region: アジアパシフィック(東京)ap-northeast-1
- 検証ユーザー: 管理者(Professional)ロールの IAM 連携ユーザー
- Amazon Quick デスクトップアプリ macOS 版 1.1.4053。管理者が設定したエンタープライズサインイン(SSO)で、Web と同じユーザーとしてサインイン
- Gmail アクションコネクター(自分が所有、Managed OAuth で接続済み)
Amazon Quick の AI 機能の利用時間は agent hours で計量されます(Professional は月 8 時間まで含まれます)。
検証済み: 管理者側の設定項目を確認する
Smart Approvals を管理者が制限するための項目が、カスタム権限にあるかを確認しました。「アカウントを管理」>「カスタムアクセス許可」>「プロファイルを作成する」を開くと、「機能と特徴」の「AI 機能」セクションに Smart approvals があり、既定で「許可済み」になっていました(プロファイルは保存していません)。

Smart approvals には AI バッジが付いていました。同じ画面の上部には「AI 機能を制限」のトグルがあります。
検証済み: Web 版とデスクトップ版の「+」メニューを比較する
チャット入力欄の「+」メニューを Web 版とデスクトップ版で比べました。
Web 版の項目は「ファイルアップロード」「ウェブ検索」「コネクタ」「フロー」「作成」で、Smart Approvals の切り替えはありませんでした。

デスクトップ版の項目は「ファイルをアップロード」「ウェブ検索」「ローカルフォルダ」「スペース」「スマート承認」で、スマート承認 のトグルが ON になっていました。

ドキュメントに書かれているとおり、Web 版にはこの設定がありません。
検証済み: Gmail コネクターが対象条件を満たしているか確認する
Smart Approvals のレビュー対象になる条件(コネクター側「ユーザーの選択に任せる」かつユーザー側「毎回確認する」)を、Gmail コネクターの Write ツールについて確認しました。
コネクター側は、Web の「Connectors」> Gmail >「編集」>「書き込み権限の管理」で確認しました。Write ツール 15 個すべてが「ユーザーの選択に任せる」でした。

ユーザー側は、Web のアカウントメニュー >「プリファレンス」>「コネクタ」> Gmail で確認しました。Write ツール 15 個すべてが「毎回確認する」、Read ツールは「常に許可する」でした。

デスクトップアプリ側でも、Gmail の書き込みアクションは「その都度聞いてください」と表示されていました。
| 確認箇所 | CreateDraft / CreateLabel / SendEmail / TrashMessage などの Write ツール |
|---|---|
| コネクター側(Web) | ユーザーの選択に任せる |
| ユーザー側(Web) | 毎回確認する |
| ユーザー側(デスクトップ) | その都度聞いてください |
Gmail の Write ツールは、ドキュメント上の対象条件を満たしています。
検証済み: デスクトップアプリでエージェントにアクションを実行させる
スマート承認が ON の状態で、ケースごとに新しいチャットを開いて次の依頼を入力しました。確認プロンプトが表示された場合は「信頼」を選ばない手順で進めています。
A1: Gmail で、件名「SA-DRAFT-001」、本文「Smart Approvals test」、宛先なしの下書きを作成してください。送信はしないでください。
A2: Gmail で「SA-LABEL-001」という名前のラベルを作成してください。
A3: Gmail で、自分(<自分の社内アドレス>)宛てに、件名「SA-MAIL-001」、本文「Smart Approvals test」のメールを送信してください。
B : Gmail で、件名「SA-MAIL-001」のメールを受信トレイから探して、ゴミ箱に移動してください。
ケース C は A3 と同じ自分の社内アドレス宛てに、件名「SA-MAIL-EXT-001」、本文「Smart Approvals test」のメール送信を依頼しました。呼ばれたツールは、CloudTrail に記録された GetAction の actionId で確認しています。
| ケース | 依頼内容 | 呼ばれたツール | 確認の表示 | 結果 |
|---|---|---|---|---|
| A1 | 宛先なしの下書き作成 | CreateDraft | なし | 作成された |
| A2 | ラベル作成(続けて色の変更) | CreateLabel / UpdateLabel | なし | 作成・変更された |
| A3 | 自分宛てのメール送信 | SendEmail | なし | 送信され、受信トレイに届いた |
| B | A3 のメールをゴミ箱へ移動 | ListEmails / TrashMessage | なし | ゴミ箱に移動された |
| C | 自分宛てのメール送信(別の件名) | SendEmail | Review & Send カード | 拒否したため送信されなかった |
A1〜A3 と B は、確認プロンプトが表示されずに実行されました。ドキュメントでは自動承認した場合は会話内に表示されると説明されていますが、自動承認を示す表示も見当たりませんでした。

ケース C では、宛先・Cc・BCC・件名・本文を編集できる「Review & Send」カードが表示され、「拒否」と「Send」を選べる状態になりました。「拒否」を押すと、メールは送信されませんでした。

A3 と C は同じ自分のアドレス宛ての SendEmail ですが、A3 は確認なしで送信され、C ではカードが表示されました。今回の結果から、この違いが生じた理由は分かりませんでした。
ケース B のゴミ箱への移動は、Gmail 上で元に戻せる操作です。ドキュメントがユーザーに回す例として挙げている「削除・上書き」にこの操作が含まれるかどうかは、今回の結果からは判断できません。
検証済み: スマート承認を OFF にして同じ種類の操作を実行する
ドキュメントでは、Smart Approvals を OFF にすると対象アクションは自動承認されずにユーザーのレビューが必要になると説明されています。そこで「+」メニューでスマート承認を OFF にしてから、新しいチャットでラベル作成を依頼しました。

D : Gmail で「SA-LABEL-002」という名前のラベルを作成してください。
期待した結果とは異なり、確認プロンプトは表示されずにラベルが作成されました。

検証後、スマート承認は ON に戻しています。
検証済み: Web 版で同じ操作を実行する
比較のため、Smart Approvals がない Web 版のチャットで同じ種類のラベル作成を依頼しました。
Gmail で「SA-LABEL-WEB-001」という名前のラベルを作成してください。
Web 版では「Requesting Action review」と表示され、「Quick が CreateLabel を実行するのを許可します」というカードに「拒否」「信頼」「許可」のボタンが表示されました。

「拒否」を押すと「アクションがキャンセルされました」と表示され、ラベルは作成されませんでした。同じユーザー、同じコネクター、同じ「毎回確認する」の設定で、Web 版では確認が表示され、デスクトップ版(ケース A2・D)では表示されなかったことになります。
検証済み: CloudTrail で記録を確認する
ドキュメントに書かれている 2 つのイベントが記録されているかを確認しました。検証では AWS SDK から LookupEvents API を呼び出しています。AWS CLI では次のコマンドに相当します。
% aws cloudtrail lookup-events \
--region ap-northeast-1 \
--lookup-attributes AttributeKey=EventName,AttributeValue=BatchUpdatePreferencesInternal \
--start-time 2026-10-29T01:00:00Z \
--query 'length(Events)'
0
% aws cloudtrail lookup-events \
--region ap-northeast-1 \
--lookup-attributes AttributeKey=EventName,AttributeValue=BatchUpdatePermissionsInternal \
--start-time 2026-10-29T01:00:00Z \
--query 'length(Events)'
0
ap-northeast-1 に加えて us-east-1 と us-west-2 でも検索しましたが、どちらのイベントも 0 件でした。最後の検索は、ケース D の実行から 25 分以上経った時点です。
一方で、Gmail コネクターに対する GetAction は、各ケースの時刻に記録されていました。
| 時刻(JST) | actionId | ケース |
|---|---|---|
| 10:25:22 | CreateDraft | A1 |
| 10:27:32 | CreateLabel | A2 |
| 10:30:40 | UpdateLabel | A2(色の変更) |
| 10:32:58 | SendEmail | A3 |
| 10:36:05 | ListEmails | B |
| 10:36:09 | TrashMessage | B |
| 10:38:22 | SendEmail | C |
| 10:49:06 | CreateLabel | D |
デスクトップアプリのローカルログも確認しましたが、権限の判断に関する記録があったのはケース C で拒否したときの 1 件だけでした。
考察
今回の検証は、管理画面と各クライアントの設定は確認できたものの、classifier が自動承認とユーザーへの確認を振り分けていることは確認できなかったため、部分的な検証にとどまりました。確認できた事実は次のとおりです。
- 管理者向けには、カスタム権限の「AI 機能」に Smart approvals の項目がある
- スマート承認のトグルはデスクトップ版の「+」メニューにあり、Web 版にはない
- Gmail の Write ツールは、コネクター側・ユーザー側ともドキュメント上の対象条件を満たしていた
- デスクトップ版では、スマート承認の ON/OFF にかかわらず、下書き作成・ラベル作成・自分宛て送信・ゴミ箱への移動が確認なしで実行された
- 確認が表示されたのは、デスクトップ版のケース C と Web 版の対照テストだけだった
- ドキュメントに書かれた
BatchUpdatePreferencesInternalとBatchUpdatePermissionsInternalは記録されなかった
ケース A1〜A3 と B だけを見ると、Smart Approvals が自動承認した結果とも読めます。しかし、ドキュメントに書かれた自動承認の表示と CloudTrail のイベントがどちらも確認できず、OFF にしたケース D でも確認なしで実行されました。そのため、classifier が承認したのか、確認の処理自体が行われなかったのかは、今回の結果からは区別できませんでした。
導入を検討している方は、次の点に注意してください。
- クライアントによって確認の表示が異なる場合がある: 今回は同じユーザー・同じ設定でも、Web 版では確認が表示され、デスクトップ版では表示されませんでした。デスクトップアプリを配布する前に、自分の環境で対象アクションの挙動を確かめることをおすすめします
- 必ず人の承認が必要なアクションはコネクター側で固定する: ドキュメントでも、自動レビューに頼らずコネクターのアクション権限で確認を必須にすることが推奨されています。コネクター側を「毎回確認する」にしたアクションは、Smart Approvals の対象外になります
- CloudTrail による監査は記録されることを先に確認する: 監査を CloudTrail のイベントで行う場合、ドキュメントのイベントが自分の環境で記録されるかを事前に確認する必要があります
- 確認プロンプトでは「信頼」と「許可」の違いに注意する: 「信頼」を選ぶと、そのアクションでは以後確認プロンプトが表示されなくなります。ユーザー側の設定を「毎回確認する」のまま保つには、「許可」を選びます
今後、次の点に期待しています。
- Web 版での Smart Approvals の提供
最後に
Amazon Quick の Smart Approvals は、コネクター側「ユーザーの選択に任せる」かつユーザー側「毎回確認する」のアクションについて、classifier が自動承認するかユーザーに確認するかを判断する機能です。既存のポリシーが優先され、新しいアクセス権を与えない設計になっています。
今回の検証では、管理者側の設定項目、Web 版とデスクトップ版の違い、対象条件は確認できました。一方、デスクトップ版ではスマート承認の ON/OFF にかかわらず Gmail の Write ツールが確認なしで実行され、ドキュメントに書かれた自動承認の表示と CloudTrail のイベントは確認できませんでした。
エージェントにアクションを任せる範囲を広げる前に、自分の環境で対象アクションごとの挙動と CloudTrail の記録を確認し、必ず人が確認すべきアクションはコネクター側で「毎回確認する」に設定しておくことをおすすめします。









