主要 Amazon SNS存取政策概念 - Amazon Simple Notification Service

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

主要 Amazon SNS存取政策概念

以下章節說明使用存取原則語言所需要了解的概念。它們是以邏輯順序列出,清單的前面項目是您首先需要知道的項目。

權限

許可的概念是有關允許或不允許特定資源的一些存取類型。許可尤其遵照此形式:「A 有/無許可對適用 D 的 C 執行 B」。例如,Jane (A) 有權將 (B) 發佈TopicA (C),只要她使用HTTP通訊協定 (D)。每當 Jane 發佈到 TopicA 時,服務會檢查她是否擁有許可,以及要求是否符合許可中所述的條件。

陳述式

陳述式是以存取原則語言撰寫之正式的單一許可的描述。您一律要撰寫陳述式做為較廣容器文件 (已知為政策) 的一部分 (請參見下一個概念)。

政策

政策是做為一個或多個陳述式之容器的文件 (以存取原則語言撰寫)。例如,政策可以包含兩個陳述式:一個陳述 Jane 可以使用電子郵件通訊協定來訂閱,另一個陳述 Bob 不可發佈至主題 A。如下圖所示,相等的情況是有兩個政策,一個陳述 Jane 可以使用電子郵件通訊協定,另一個陳述 Bob 不能發佈到主題 A。

比較在 Amazon 中組織政策陳述式的兩種方式SNS。在左側,單一政策 (政策 A) 包含兩個陳述式。在右側,相同的兩個陳述式會分割為兩個政策,每個政策都包含一個陳述式。圖表說明這兩種方法在許可的定義和強制執行方式方面相當。

政策文件中僅允許 ASCII 個字元。您可以使用 aws:SourceAccountaws:SourceOwner 來解決您需要插入包含非ASCII 字元ARNs之 AWS 其他服務的案例。請參閱aws:SourceAccount 與 aws:SourceOwner 的比較之間的差異。

發行者

發行者是撰寫政策以授予資源許可的人員。發行者 (依定義) 一律是資源擁有者。 AWS 不允許 AWS 服務使用者為他們未擁有的資源建立政策。如果 John 是資源擁有者,請在 John 提交政策時 AWS 驗證 John 的身分,以授予該資源的許可。

Principal

委託人是接收政策中許可的一位或多位人員。委託人是陳述式「A 有許可對適用 D 的 C 執行 B」中的 A。在政策中,您可將委託人設定為「任何人」(例如,您可以指定萬用字元代表所有人員)。您可以如此做,例如,您不想要根據申請者的實際身分限制存取,而是根據其他識別特徵,如申請者的 IP 位址。

動作

動作是委託人擁有執行許可的活動。動作是陳述式「A 有許可對適用 D 的 C 執行 B」中的 B。一般而言, 動作只是 請求中的操作 AWS。例如,Jane SNS使用 將請求傳送至 AmazonAction=Subscribe。您可以在政策中指定一個或多個動作。

資源

資源是委託人請求存取的物件。資源是陳述式「A 有許可對適用 D 的 C 執行 B」中的 C。

條件和金鑰

條件是有關許可的任何限制或詳細資訊。條件是陳述式「A 有許可對適用 D 的 C 執行 B」中的 D。指定條件的政策部分可能是所有部分中最詳細和複雜的。一般條件與下列相關:

  • 日期和時間 (例如,請求必須在特定日期之前抵達)

  • IP 地址 (例如,請求者的 IP 地址必須是特定CIDR範圍的一部分)

金鑰是特定特性,即存取限制的基礎。例如,請求的日期和時間。

您同時使用條件金鑰來表達限制。了解您實際如何實作限制的最簡單方式是使用範例:如果您想要限制存取期限為 2010 年 5 月 30 日之前,您使用稱為 DateLessThan 的條件。您可以使用名為 aws:CurrentTime 並將其值設定為 2010-05-30T00:00:00Z 的金鑰。 AWS 定義您可以使用的條件和金鑰。 AWS 服務本身 (例如 Amazon SQS或 Amazon SNS) 也可能定義服務特定的金鑰。如需詳細資訊,請參閱Amazon SNSAPI許可:動作和資源參考

要求者

申請者是傳送請求至 AWS 服務並要求存取特定資源的人員。申請者傳送請求至 AWS 時主要表示:「您可以允許我對適用 D 的 C 執行 B 嗎?」

評估

評估是 AWS 服務用來判斷是否應根據適用政策拒絕或允許傳入請求的程序。如需評估邏輯的資訊,請參閱 評估邏輯

Effect

效用是您想要政策陳述式在評估時間傳回的結果。您在政策中撰寫陳述式時指定此值,並且可能的值是拒絕允許

例如,您可以撰寫一個政策,含有拒絕所有來自南極之請求的陳述式 (效用=拒絕使用配置至南極之 IP 位址的請求)。或者,您可以撰寫一個政策,含有允許所有不是來自南極之請求的陳述式 (效用=允許不是來自南極的請求)。雖然兩個陳述式看似執行一樣的事情,在存取原則語言邏輯中,它們是不同的。如需詳細資訊,請參閱評估邏輯

雖然您可為效用 (允許或拒絕) 指定的只有兩個可能值,卻可以在政策評估時間上有三種不同結果:預設拒絕允許明確拒絕。如需詳細資訊,請參閱下列概念和 評估邏輯

預設拒絕

預設拒絕是沒有允許或明確拒絕之政策的預設結果。

允許

允許源自於具有效用=允許的陳述式,假設所有陳述的條件都符合。範例:如果請求在 2010 年 4 月 30 日下午 1:00 前收到即允許。允許覆寫所有預設拒絕,但是明確拒絕則無法覆寫。

明確拒絕

明確拒絕源自於具有效用=拒絕的陳述式,假設所有陳述的條件都符合。範例:拒絕所有來自南極的請求。任何來自南極的請求一律都予以拒絕,不論任何其他政策是否可能允許。