預防跨服務混淆代理人 - Amazon Nimble Studio

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

預防跨服務混淆代理人

混淆的副問題是一個安全性問題,即沒有執行動作權限的實體可能會強制更具權限的實體執行動作。In (入) AWS,跨服務模擬可能會導致混淆的副問題。在某個服務 (呼叫服務) 呼叫另一個服務 (被呼叫服務) 時,可能會發生跨服務模擬。調用服務可以被操縱,以其他方式不應該有權限訪問另一個客戶的資源採取行動的權限。為了防止這種情況, AWS 提供的工具可協助您透過已授予您帳戶中資源存取權的服務主體來保護所有服務的資料。

我們建議在資源政策中使用aws:SourceArnaws:SourceAccount全域條件上下文金鑰,以限制 Identity and Access Management (IAM) 授予 Amazon Nimble Studio 存取資源的許可。如果您同時使用全域條件內容索引鍵,則aws:SourceAccount值中的值和帳戶在aws:SourceArn相同的策略陳述式中使用時必須使用相同的帳戶 ID。

的值aws:SourceArn必須是工作室的,ARN並且aws:SourceAccount必須是您的帳戶 ID。在創建工作室之前,您將不會知道工作室 ID 是什麼,因為它是由靈活工作室生成的。創建工作室後,您可以將最終的工作室 ID 設置為更新信任策略aws:SourceArn

防止混淆的副問題的最有效方法是使用aws:SourceArn全局條件上下文鍵與完整ARN的資源。如果您不知道資源ARN的完整內容,或者您要指定多個資源,請使用具有萬用字元 (*) 的aws:SourceArn全域內容條件索引鍵 (*) 來表示ARN. 例如:arn:aws:nimble::123456789012:*

您的終端使用者在登入敏捷工作室入口網站時擔任您的工作室角色。當您創建工作室時, AWS 設定角色並評估原則。 AWS 每次您的其中一位使用者登入 Nimble Studio 入口網站時,都會評估該政策。當您建立工作室時,您無法修改aws:SourceArn. 完成創建您的工作室後,您可以使 studioArn 用aws:SourceArn.

下列範例是假設角色原則,顯示如何在 Nimble Studio 中使用aws:SourceArnaws:SourceAccount全域條件內容索引鍵,以防止混淆的副問題。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "identity.nimble.amazonaws.com"
      },
      "Action": [
        "sts:AssumeRole",
        "sts:TagSession"
      ],
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "123456789012"
        },
        "StringLike": {
          "aws:SourceArn": "arn:aws:nimble:us-west-2:123456789012:studio/*"
        }
      }
    }
  ]
}