本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
部署儀表板
API Gateway 自訂授權方
在表面下方,API Gateway 的 Lambda 自訂授權方用於所有 API 呼叫 (RESTful 和 WebSocket 型),以驗證指定的使用者是否具有根據其所屬群組執行動作的許可。此自訂授權方由包含每個群組政策的 DynamoDB 資料表提供支援。叫用 API 時,API Gateway 會叫用自訂授權方 Lambda 函數,其會解碼提供的 Amazon Cognito 存取權杖,以判斷使用者所屬的使用者群組。然後,政策資料表會依群組名稱查詢,以傳回該群組的相關政策。
在每次新的使用案例部署上,管理員政策都會更新,以存放新的陳述式,允許在該使用案例的 API 上執行 execute-api:Invoke 動作。刪除使用案例時,對應的陳述式會從政策中移除。
對於為個別使用案例建立的群組,政策中僅存在單一陳述式,允許僅針對該使用案例的 API 執行 api:Invoke 動作。
由於此結構,屬於使用案例群組的任何使用者都可以存取該使用案例的 API。單一使用者也可以手動新增至多個群組,以允許該使用者使用多個使用案例。
警告
如果您想要將新使用案例的存取權授予現有使用者群組,您也可以在政策資料表中手動編輯指定群組的政策。刪除使用案例時 (即使您已手動編輯),也會刪除使用案例群組,因此刪除使用案例時請小心。
如果使用案例堆疊是獨立部署 (不使用部署儀表板),則會為該部署建立 Amazon Cognito 使用者集區,其中包含可存取該使用案例 API 的單一使用者。此使用者集區僅屬於此使用案例,不會與其他獨立部署共用。