選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用 IAM 許可權控制 REST API 的存取

焦點模式
使用 IAM 許可權控制 REST API 的存取 - Amazon API Gateway

透過控制對下列兩個 API Gateway 元件程序的存取,您可以使用 IAM 許可控制對 Amazon API Gateway API 的存取:

  • 若要在 API Gateway 中建立、部署及管理 API,您必須授予 API 開發人員許可來執行 API Gateway 之 API 管理元件支援的必要動作。

  • 若要呼叫已部署的 API 或重新整理 API 快取,您必須授予 API 發起人許可來執行 API Gateway 的 API 執行元件支援的必要 IAM 動作。

這兩個處理的存取控制需要不同的許可模型,以下將進行說明。

建立與管理 API 的 API Gateway 許可模型

若要讓 API 開發人員在 API Gateway 中建立及管理 API,您必須建立 IAM 許可政策,允許指定的 API 開發人員建立、更新、部署、檢視或刪除必要的 API 實體。您會將許可政策附加到使用者、角色或群組。

若要提供存取權,請新增權限至您的使用者、群組或角色:

  • AWS IAM Identity Center 中的使用者和群組:

    建立權限合集。請按照 AWS IAM Identity Center使用者指南 中的 建立權限合集 說明進行操作。

  • 透過身分提供者在 IAM 中管理的使用者:

    建立聯合身分的角色。遵循《IAM 使用者指南》的為第三方身分提供者 (聯合) 建立角色中的指示。

  • IAM 使用者:

如需如何使用此許可模型的詳細資訊,請參閱「API Gateway 身分類型政策」。

用於呼叫 API 的 API Gateway 許可模型

若要讓 API 發起人呼叫 API 或重新整理其快取,您必須建立 IAM 政策,允許已啟用使用者身分驗證的指定 API 發起人呼叫 API 方法。API 開發人員可將方法的 authorizationType 屬性設定為 AWS_IAM,以要求發起人提交使用者的憑證以進行身份驗證。然後您可以將政策連接至使用者、角色或群組。

在此 IAM 許可政策陳述式中,IAM Resource 元素包含指定 HTTP 動詞與 API Gateway 資源路徑所識別的已部署 API 方法清單。IAM Action 元素包含必要的 API Gateway API 執行動作。這些動作包含 execute-api:Invokeexecute-api:InvalidateCache,其中 execute-api 指定 API Gateway 的基礎 API 執行元件。

如需如何使用此許可模型的詳細資訊,請參閱「控制對 API 的呼叫存取權」。

當 API 與後端 AWS 服務 (例如 AWS Lambda) 整合時,API Gateway 也必須具備許可,才能代表 API 呼叫者存取整合的 AWS 資源 (例如叫用 Lambda 函數)。若要授予這些許可,請建立適用於 API Gateway 的 AWS 服務類型的 IAM 角色。當您在 IAM 管理主控台建立此角色時,所產生的角色會包含下列 IAM 信任政策,其中宣告 API Gateway 是允許擔任該角色的受信任實體:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "apigateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

如果您藉由呼叫 create-role 的 CLI 命令或是藉由對應的軟體開發套件方法來建立 IAM 角色,則您必須將 assume-role-policy-document 的輸入參數提供給上述政策。請勿嘗試在 IAM 管理主控台直接建立這種政策,或是呼叫 AWS CLI create-policy 命令或對應的軟體開發套件方法。

若要讓 API Gateway 呼叫整合的 AWS 服務,您也必須連接到適用此角色的 IAM 許可政策以呼叫整合的 AWS 服務。例如,若要呼叫 Lambda 函數,您必須在 IAM 角色中納入下列 IAM 許可政策:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "lambda:InvokeFunction", "Resource": "*" } ] }

請注意,Lambda 支援合併信任與許可政策的資源類型存取政策。使用 API Gateway 主控台整合 API 與 Lambda 函數時,不會要求您明確設定此 IAM 角色,因為主控台會在您的同意下,為您設定 Lambda 函數的資源型許可。

注意

若要制定 AWS 服務的存取控制,您可以使用發起人類型許可模型,其中許可政策會直接連接到發起人的使用者或群組;或使用角色類型許可模型,其中許可政策會連接到 API Gateway 可擔任的 IAM 角色。這兩個模型的許可政策可能有所不同。例如,發起人類型政策會封鎖存取,而角色類型政策則會允許存取。您可以利用這點,要求使用者只透過 API Gateway API 存取 AWS 服務。

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。