エージェントは、問題を調査し、運用インフラストラクチャに対してアクションを実行し、環境内の機密データにアクセスできます。 アクセス制御は、アクションを要求できるユーザー、アクションを承認できるユーザー、エージェントの構成を変更できるユーザーを決定します。
アクセス制御の概要
アクセス制御は、次の 3 つのレイヤーで機能します。
| レイヤー | コントロール | 設定場所: |
|---|---|---|
| ユーザー ロール (このページ) | エージェントでユーザーができること | エージェント リソース上のAzure IAM |
| 実行モード | エージェントが動作する前に尋ねるかどうか | 各応答プランおよび各スケジュールタスクに基づいて |
| エージェントのアクセス許可 | エージェントが Azure でアクセスできるもの(フォールバックとしての代理アクセス許可 (OBO) を含む) | リソース グループの RBAC ロール |
4つの組み込み役割
| 役割 | できること | できない |
|---|---|---|
| SRE エージェント リーダー | スレッド、ログ、インシデントを表示する | チャット、アクションの要求、何かを変更する |
| SRE エージェント標準ユーザー | チャット、診断実行、アクションリクエスト、スケジュールタスク管理、ナレッジドキュメントのアップロード、コードリポジトリコネクタの追加 | アクションの承認、カスタムエージェントの作成、リソースの削除 |
| SREエージェント著者 | カスタムエージェントの作成、対応計画の作成、インシデント管理の設定 | チャット、アクションの承認、知識文書のアップロード、コードリポジトリのコネクターの追加、スケジュールタスクの作成、リソースの削除 |
| SRE エージェント管理者 | アクションの承認、コネクタの管理、リソースの削除 | — |
エージェントを作成したユーザーは、 SRE エージェント管理者 ロールを自動的に受け取ります。
Caution
SREエージェント著者の役割だけではリポジトリの追加や知識のアップロードはポータルにできません。 これらの操作には Microsoft.App/agents/memory/write データアクションが必要ですが、著者の役割には含まれていません。 著者の役割には threads/writeが含まれていないので、著者はチャットできません。
エージェントをカスタマイズしリポジトリを接続したり、知識をアップロードしたりするには、 SREエージェントを標準ユーザー と SREエージェント作成者の両方に割り当てるか、 SREエージェント管理者を割り当ててください。 Azureのオーナーおよびコントリビューターの役割はこれらの役割に代わるものではありません。なぜなら、それらはSREエージェントのデータアクションではなくコントロールプレーンアクションを付与するからです。
注
また、Microsoft.App/agents/{agent}/repositoriesおよびMicrosoft.App/agents/{agent}/githubAuthsのAzure Resource Manager(ARM)拡張パスを通じてリポジトリやGitHub認証リソースを管理することも可能です。 これらのパスは extendedAgents 権限を使用しており、著者の役割にはそれが含まれています。 その結果、ARMでは操作が成功しても、Authorのポータルでは失敗することもあります。 ユーザーがサポートされたポータルワークフローを必要とする場合、 SREエージェントを標準ユーザー に割り当てます。
誰がどの役割を持つべきですか?
| 役割 | 渡す |
|---|---|
| SRE エージェント リーダー | 監査者、コンプライアンス チーム、可視性が必要な利害関係者 |
| SRE エージェント標準ユーザー | L1/L2 エンジニア、初動対応者、問題を診断するユーザー |
| SREエージェント著者 | カスタムエージェントを作成するSREエンジニア、レスポンスプランの作成者、エージェントの動作をカスタマイズするチームメンバー |
| SRE エージェント管理者 | SRE マネージャー、クラウド管理者、インシデントの指揮官 |
ポータルでアクセス許可を適用する方法
エージェントにアクセスすると、ポータルによってAzureロールの割り当てが確認されます。 アクセスは 2 つのレベルで適用されます。
エージェントのアクセスがありません
SRE エージェントロールの割り当てがない場合、ポータルにはアクセス必須画面が表示され、シールド アイコンとAzure IAM ブレードを開く [Access Control] ボタンが表示されます。 リソースに対して Azure の所有者または共同作成者である場合、管理者ロールを自動的に割り当てるバナーが表示されます。
バックエンドの適用
SRE エージェント ロールがあるが、アクセス許可を超えてアクションを試みると、 バックエンドは 403 エラーでアクションをブロックします。 例えば、リーダーはメッセージを送信できず、標準ユーザーはカスタムエージェントを作成できず、著者はアクションを承認したりポータル内のリポジトリコネクタを追加したりできません。 ポータルはページに移動したりボタンを選んだりできますが、サーバーに到達すると操作が失敗します。 403応答には本体が空の場合もあるため、Key Vault、ARM、ネットワークのトラブルシューティングを進める前にユーザーのSREエージェントの役割を確認してください。
注
一部のポータル機能では、書き込みアクセス許可がない場合にボタンが事前に無効になります。 ただし、これはすべての機能でまだ一貫しているわけではありません。バックエンドでは、UI に表示される内容に関係なく、常に適切なアクセス許可が適用されます。
各ロールがアクセスできる内容
| 面積 | Reader | 標準ユーザー | Author | 管理者 |
|---|---|---|---|---|
| チャット | スレッドの表示 (読み取り専用) | メッセージの送信、スレッドの開始 | スレッドの表示 (読み取り専用) | フル アクセス、アクションの承認、スレッドの削除 |
| エージェントキャンバス | カスタム エージェントを表示する | カスタム エージェントを表示する | カスタム エージェントの作成、編集、削除 | カスタム エージェントの作成、編集、削除 |
| ナレッジ ベース | ドキュメントを参照する | 文書の参照とアップロード | ドキュメントを参照する | ドキュメントのアップロードと削除 |
| コードリポジトリコネクター | コネクタの表示 | 表示+追加、編集コネクタ | コネクタの表示 | コネクタの追加、編集、削除 |
| 対応計画 | プランを表示する | プランを表示する | プランの作成、編集、削除 | プランの作成、編集、削除 |
| 管理対象リソース | リソースの表示 | リソースの表示 | リソースの表示 | リソースの追加、削除 |
| スケジュール済みタスク | — | タスクの作成、編集、削除 | — | タスクの作成、編集、削除 |
| [設定] | 設定の表示 | 設定の表示 | 設定の表示 | 設定の変更、エージェントの停止または削除 |
ロールを割り当てる
Azure ポータル (Access コントロール (IAM)>ロールの割り当ての追加) またはAzure CLIを使用してロールを割り当てます。
az role assignment create \
--assignee user@company.com \
--role "SRE Agent Administrator" \
--scope <agent-resource-id>
必要に応じて役割名を SRE Agent Author、 SRE Agent Standard User、または SRE Agent Reader に置き換えてください。
エージェントリソースIDを見つけるには、以下を実行します:
az resource show \
--resource-group <RESOURCE_GROUP_NAME> \
--name <AGENT_NAME> \
--resource-type Microsoft.App/agents \
--query id -o tsv
ロールの連携のしくみ
| Step | 誰 | アクション |
|---|---|---|
| 1 | エンジニア (標準ユーザー) | "構成の問題を修正する" |
| 2 | Author | 設定修正のためのレスポンスプランを持つカスタムエージェントを作成します |
| 3 | エージェント | 修復計画の草案作成 |
| 4 | エージェント | 実行できません。なぜなら、そのアクションには管理者の承認が必要だからです |
| 5 | マネージャー (管理者) | レビューし承認する |
| 6 | エージェント | 管理型アイデンティティまたはOBO認証を用いて修正を実行します |