Amazon Bedrock AgentCore Gateway 的精細存取控制
Amazon Bedrock AgentCore Gateway 提供精細存取控制功能,可讓您控制哪些使用者和客服人員可以存取特定工具和資源。您可以透過閘道攔截器為自訂邏輯實作存取控制,或使用以資源為基礎的政策進行標準 AWS型存取控制。如需資源型政策的相關資訊,請參閱 Amazon Bedrock AgentCore 的資源型政策。
使用攔截器進行存取控制
閘道攔截器提供最靈活的方式來實作精細存取控制。REQUEST 攔截器會在閘道呼叫目標之前執行,讓您:
-
根據 JWT 宣告或自訂邏輯驗證使用者許可
-
控制對特定工具或 MCP 操作的存取
-
實作角色型或屬性型存取控制
-
根據使用者內容篩選或修改請求
-
傳回未經授權請求的授權錯誤
如需實作和設定攔截器的詳細資訊,包括授權邏輯範例,請參閱搭配 Gateway 使用攔截器。
存取控制層級
Gateway 中的精細存取控制可以在多個層級實作:
- 閘道層級存取
-
控制哪些使用者或代理程式可以透過 OAuth 授權伺服器或 AWS IAM 身分驗證來連接到閘道並進行身分驗證。
- 工具層級存取
-
使用攔截器邏輯控制閘道內特定工具的存取,以在工具執行之前驗證許可。
- 操作層級存取
-
使用攔截器控制對特定 MCP 操作 (例如
tools/list或tools/call) 的存取,以驗證操作許可。 - 參數層級存取
-
使用攔截器來篩選或驗證請求參數,控制操作中特定參數或資料的存取。
實作方法
您可以使用下列方式實作精細存取控制:
- JWT 宣告驗證
-
使用攔截器檢查 JWT 宣告,例如使用者角色、部門或自訂屬性,以做出授權決策。
- IAM 主體比對
-
對於 IAM 驗證的閘道,透過比對發起人的 IAM ARN 來實作存取控制。在 Cedar 政策
principal.id中使用 上的模式比對,根據 AWS 帳戶、角色或使用者來限制存取。 - 外部授權服務
-
設定攔截器來呼叫外部授權服務或資料庫,以驗證使用者許可。
- 請求內容篩選
-
使用攔截器根據使用者內容修改請求,例如新增使用者特定的篩選條件或限制資料範圍。
最佳實務
-
最低權限原則 - 僅授予使用者執行其任務所需的最低存取權。
-
使用結構化宣告 - 利用 JWT 宣告將使用者內容和授權資訊傳遞給您的攔截器。
-
實作失效安全預設值 - 設計攔截器,在無法確定授權時預設拒絕存取。
-
日誌授權決策 - 確保您的攔截器記錄用於稽核的存取決策。