Amazon API Gateway 的存取原則語言概觀 - Amazon API Gateway

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon API Gateway 的存取原則語言概觀

本頁說明 Amazon API Gateway 資源政策中使用的基本元素。

資源政策是使用與 IAM 政策相同的語法來進行指定。如需完整的政策語言資訊,請參閱 IAM 使用者指南中的 IAM 政策概觀AWS Identity and Access Management 政策參考

有關 AWS 服務如何決定應允許還是拒絕給定請求的詳細信息,請參閱確定請求是允許還是拒絕

存取政策中的常用元素

就其最基本意義而言,資源政策包含下列元素:

  • 資源 – API 是您可允許或拒絕許可的 Amazon API Gateway 資源。在政策中,您可以使用 Amazon Resource Name (ARN) 來識別資源。您也可以使用縮寫語法,當您儲存資源政策時,API Gateway 語法會自動將它展開為完整 ARN。如需進一步了解,請參閱API Gateway 資源政策範例

    如需完整 Resource 元素的格式,請參閱在 API Gateway 中執行 API 之許可的資源格式

  • 動作 - 針對每個資源,Amazon API Gateway 皆支援一組操作。您可使用動作關鍵字,來識別允許 (或拒絕) 資源操作。

    例如,execute-api:Invoke 許可讓使用者在使用者請求時有權叫用 API。

    如需 Action 元素的格式,請參閱 在 API Gateway 中執行 API 之許可的動作格式

  • 效果 - 當使用者請求特定動作時會有什麼效果,它可以是 AllowDeny。您也可以明確拒絕存取資源,您可能會這樣做,以確保使用者無法存取資源,即使另有其他政策授予存取。

    注意

    「隱含拒絕」與「預設拒絕」是相同的。

    「隱含拒絕」與「明確拒絕」不同。如需詳細資訊,請參閱預設拒絕與明確拒絕間的差異

  • 委託人 - 允許存取陳述式中動作與資源的帳戶或使用者。在資源政策中,委託人是接收此許可的使用者或帳戶。

下列範例資源政策會顯示先前的常用政策元素。此政策會將指定區域中指定 account-id 下 API 的存取權,授與其來源 IP 地址是在地址區塊 123.4.5.6/24 中的任何使用者。如果使用者的來源 IP 不在範圍內,則政策會拒絕所有對 API 的存取。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": "arn:aws:execute-api:region:account-id:*" }, { "Effect": "Deny", "Principal": "*", "Action": "execute-api:Invoke", "Resource": "arn:aws:execute-api:region:account-id:*", "Condition": { "NotIpAddress": { "aws:SourceIp": "123.4.5.6/24" } } } ] }