

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

# 身分與存取管理
<a name="sec-iam"></a>

AWS Identity and Access Management (IAM) 是一種 Web 服務，可協助您安全地控制對 AWS 資源的存取。您可以使用 IAM 來控制 (已登入) 的身分驗證和授權使用資源的 (許可)。在 AMS 加入期間，您有責任在每個受管帳戶中建立跨帳戶 IAM 管理員角色。

## 多帳戶登陸區域 (MALZ) IAM 防護措施
<a name="access-how-works"></a>

AMS 多帳戶登陸區域 (MALZ) 需要 Active Directory (AD) 信任作為 AMS 存取管理的主要設計目標，以允許每個組織 （包括 AMS 和客戶） 管理其身分的生命週期。這樣就不需要在彼此的目錄中擁有登入資料。已設定單向信任，因此 中的受管 Active Directory AWS 帳戶 信任客戶擁有或受管 AD 來驗證使用者。由於信任只是一種方式，並不表示 Managed AD 受客戶 Active Directory 信任。

在此組態中，管理使用者身分的客戶目錄稱為使用者樹系，而連接 Amazon EC2 執行個體的受管 AD 稱為資源樹系。這是 Windows 身分驗證常用的 Microsoft 設計模式；如需詳細資訊，請參閱[樹系設計模型](https://docs.microsoft.com/en-us/windows-server/identity/ad-ds/plan/forest-design-models)。

此模型可讓這兩個組織自動化各自的生命週期，並允許 AMS 和您在員工離開組織時快速撤銷存取權。如果沒有此模型，如果兩個組織都使用通用目錄 （或在彼此的目錄中建立使用者/群組），則兩個組織都必須放入其他工作流程和使用者同步，以考慮員工開始和離開。這會帶來風險，因為該程序具有延遲，而且可能容易出錯。

### MALZ 存取先決條件
<a name="access-how-works-prereqs"></a>

存取 AWS/AMS 主控台、CLI、軟體開發套件的 MALZ Identity Provider Integration。

![\[身分提供者與 AWS IAM、 AWS 管理主控台和 AMS 變更管理之間的關係。\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/images/malz-access-prereqs-1.png)


您 AMS 帳戶中 Amazon EC2 執行個體的單向信任。

![\[信任的方向是單向：從 Amazon EC2 執行個體到組織的 Active Directory 網域。\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/images/malz-access-prereqs-2.png)


# 使用身分驗證
<a name="iam-auth"></a>

AMS 使用 IAM 角色，這是一種 IAM 身分。IAM 角色與使用者非常類似，因為它是具有許可政策的身分，可決定身分在 中可以和不可以執行的動作 AWS。不過，角色沒有與其相關聯的登入資料，而不是唯一地與一個人相關聯，任何需要該角色的人都可以擔任該角色。IAM 使用者可擔任一個角色，為了特定任務來臨時採用不同許可。

存取角色由內部群組成員資格控制，由 Operations Management 管理並定期審查。

# AMS 中的 IAM 使用者角色
<a name="defaults-user-role"></a>

IAM 角色類似於 IAM 使用者，因為它是具有許可政策的 AWS 身分，可決定身分在其中可以和不可以執行的動作 AWS。但是，角色的目的是讓需要它的任何人可代入，而不是單獨地與某個人員關聯。

對於標準 AMS 帳戶，目前有一個 AMS 預設使用者角色 `Customer_ReadOnly_Role`，對於具有 Managed Active Directory `customer_managed_ad_user_role`的 AMS 帳戶，則有一個額外的角色。

角色政策會設定 CloudWatch 和 Amazon S3 日誌動作、AMS 主控台存取、大多數的唯讀限制 AWS 服務、帳戶 S3 主控台的限制存取，以及 AMS 變更類型存取的許可。

此外， `Customer_ReadOnly_Role`具有變動的 reserved-instances 許可，可讓您保留執行個體。它有一些節省成本的值，因此，如果您知道需要長時間特定數量的 Amazon EC2 執行個體，您可以呼叫這些 APIs。若要進一步了解，請參閱 [Amazon EC2 預留執行個體](https://aws.amazon.com/ec2/pricing/reserved-instances/)。

**注意**  
為 IAM 使用者建立自訂 IAM 政策的 AMS 服務層級目標 (SLO) 為四個工作天，除非將重複使用現有政策。如果您想要修改現有的 IAM 使用者角色，或新增新的角色，請分別提交 [IAM：更新實體](https://docs.aws.amazon.com/managedservices/latest/ctref/management-advanced-identity-and-access-management-iam-update-entity-or-policy-review-required.html)或 [IAM：建立實體](https://docs.aws.amazon.com/managedservices/latest/ctref/deployment-advanced-identity-and-access-management-iam-create-entity-or-policy.html) RFC。

如果您不熟悉 Amazon IAM 角色，請參閱 [IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)以取得重要資訊。

**多帳戶登陸區域 (MALZ)**：若要查看 AMS 多帳戶登陸區域預設、非自訂的使用者角色政策，請參閱 [MALZ：預設 IAM 使用者角色](#json-default-role-malz)，下一步。

## MALZ：預設 IAM 使用者角色
<a name="json-default-role-malz"></a>

預設多帳戶 AMS 多帳戶登陸區域使用者角色的 JSON 政策陳述式。

**注意**  
使用者角色是可自訂的，而且可能因帳戶而異。提供尋找角色的說明。

這些是預設 MALZ 使用者角色的範例。為了確保您已設定所需的政策，請執行 AWS 命令[https://docs.aws.amazon.com/cli/latest/reference/iam/get-role.html](https://docs.aws.amazon.com/cli/latest/reference/iam/get-role.html)或登入 AWS Management -> [IAM 主控台](https://console.aws.amazon.com/iam/)，然後在導覽窗格中選擇**角色**。

### 核心 OU 帳戶角色
<a name="core-accounts"></a>

核心帳戶是 MALZ 管理的基礎設施帳戶。AMS 多帳戶登陸區域 核心帳戶包括管理帳戶和聯網帳戶。


**核心 OU 帳戶：常用角色和政策**  
<a name="core-roles-common"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/defaults-user-role.html)


**核心 OU 帳戶：管理帳戶角色和政策**  
<a name="core-roles-mgmt"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/defaults-user-role.html)


**核心 OU 帳戶：聯網帳戶角色和政策**  
<a name="core-roles-networking"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/defaults-user-role.html)

### 應用程式帳戶角色
<a name="app-accounts"></a>

應用程式帳戶角色會套用至您的應用程式特定帳戶。


**應用程式帳戶：角色和政策**  
<a name="app-roles"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/defaults-user-role.html)

### 政策範例
<a name="policy-examples"></a>

範例適用於大多數使用的政策。若要檢視 ReadOnlyAccess 政策 （這是提供所有 AWS 服務的唯讀存取權的頁面），如果您有作用中的 AWS 帳戶：[ReadOnlyAccess](https://console.aws.amazon.com/iam/home?region=us-east-1#/policies/arn:aws:iam::aws:policy/ReadOnlyAccess$serviceLevelSummary)，您可以使用此連結。此外，此處也包含精簡版本。

#### AMSBillingPolicy
<a name="ABP"></a>

`AMSBillingPolicy`

您的會計部門可以使用新的帳單角色來檢視和變更 管理帳戶中的帳單資訊或帳戶設定。若要存取替代聯絡人、檢視帳戶資源用量，或保留帳單標籤，或甚至修改您的付款方式等資訊，您可以使用此角色。此新角色包含 [ AWS Billing IAM 動作網頁](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-permissions-ref.html#example-billing-deny-modifyaccount)中列出的所有許可。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "aws-portal:ViewBilling",
                "aws-portal:ModifyBilling"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToBilling"
        },
        {
            "Action": [
                "aws-portal:ViewAccount",
                "aws-portal:ModifyAccount"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToAccountSettings"
        },
        {
            "Action": [
                "budgets:ViewBudget",
                "budgets:ModifyBudget"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToAccountBudget"
        },
        {
            "Action": [
                "aws-portal:ViewPaymentMethods",
                "aws-portal:ModifyPaymentMethods"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToPaymentMethods"
        },
        {
            "Action": [
                "aws-portal:ViewUsage"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToUsage"
        },
        {
            "Action": [
                "cur:DescribeReportDefinitions",
                "cur:PutReportDefinition",
                "cur:DeleteReportDefinition",
                "cur:ModifyReportDefinition"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToCostAndUsageReport"
        },
        {
            "Action": [
                "pricing:DescribeServices",
                "pricing:GetAttributeValues",
                "pricing:GetProducts"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToPricing"
        },
        {
            "Action": [
                "ce:*",
                "compute-optimizer:*"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToCostExplorerComputeOptimizer"
        },
        {
            "Action": [
                "purchase-orders:ViewPurchaseOrders",
                "purchase-orders:ModifyPurchaseOrders"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToPurchaseOrders"
        },
        {
            "Action": [
                "redshift:AcceptReservedNodeExchange",
                "redshift:PurchaseReservedNodeOffering"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AllowAccessToRedshiftAction"
        },
        {
            "Action": "savingsplans:*",
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AWSSavingsPlansFullAccess"
        }
    ]
}
```

------

#### AMSChangeManagementReadOnlyPolicy
<a name="ROP"></a>

`AMSChangeManagementReadOnlyPolicy`

檢視所有 AMS 變更類型的許可，以及所請求變更類型的歷史記錄。

#### AMSMasterAccountSpecificChangeManagementInfrastructurePolicy
<a name="MASCMIP"></a>

`AMSMasterAccountSpecificChangeManagementInfrastructurePolicy`

請求部署 \$1 受管登陸區域 \$1 管理帳戶 \$1 建立應用程式帳戶 （使用 VPC) 變更類型的許可。

#### AMSNetworkingAccountSpecificChangeManagementInfrastructurePolicy
<a name="NASCMIP"></a>

`AMSNetworkingAccountSpecificChangeManagementInfrastructurePolicy `

請求部署 \$1 受管登陸區域 \$1 網路帳戶 \$1 建立應用程式路由表變更類型的許可。

#### AMSChangeManagementInfrastructurePolicy
<a name="INP"></a>

`AMSChangeManagementInfrastructurePolicy` （適用於管理 \$1 其他 \$1 CTs)

請求管理 \$1 其他 \$1 其他 \$1 建立和管理 \$1 其他 \$1 其他 \$1 更新變更類型的許可。

#### AMSSecretsManagerSharedPolicy
<a name="SMS"></a>

`AMSSecretsManagerSharedPolicy`

檢視 AMS 透過 共用之秘密密碼/雜湊的許可 AWS Secrets Manager （例如，稽核基礎設施的密碼）。

建立秘密密碼/雜湊以與 AMS 共用的許可 （例如，需要部署之產品的授權金鑰）。

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [{
			"Sid": "AllowAccessToSharedNameSpaces",
			"Effect": "Allow",
			"Action": "secretsmanager:*",
			"Resource": [
				"arn:aws:secretsmanager:*:*:secret:ams-shared/*",
				"arn:aws:secretsmanager:*:*:secret:customer-shared/*"
			]
		},
		{
			"Sid": "DenyGetSecretOnCustomerNamespace",
			"Effect": "Deny",
			"Action": "secretsmanager:GetSecretValue",
			"Resource": "arn:aws:secretsmanager:*:*:secret:customer-shared/*"
		},
		{
			"Sid": "AllowReadAccessToAMSNameSpace",
			"Effect": "Deny",
			"NotAction": [
				"secretsmanager:Describe*",
				"secretsmanager:Get*",
				"secretsmanager:List*"
			],
			"Resource": "arn:aws:secretsmanager:*:*:secret:ams-shared/*"
		}
	]
}
```

------

#### AMSChangeManagementPolicy
<a name="CMP"></a>

`AMSChangeManagementPolicy`

請求和檢視所有 AMS 變更類型的許可，以及請求變更類型的歷史記錄。

#### AMSReservedInstancesPolicy
<a name="RIP"></a>

`AMSReservedInstancesPolicy`

管理 Amazon EC2 預留執行個體的許可；如需定價資訊，請參閱 [Amazon EC2 預留執行個體](https://aws.amazon.com/ec2/pricing/reserved-instances/)。

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [{
		"Sid": "AllowReservedInstancesManagement",
		"Effect": "Allow",
		"Action": [
			"ec2:ModifyReservedInstances",
			"ec2:PurchaseReservedInstancesOffering"
		],
		"Resource": [
			"*"
		]
	}]
}
```

------

#### AMSS3Policy
<a name="S3P"></a>

`AMSS3Policy`

從現有 Amazon S3 儲存貯體建立和刪除檔案的許可。

**注意**  
這些許可不會授予建立 S3 儲存貯體的能力；必須使用部署 \$1 進階堆疊元件 \$1 S3 儲存 \$1 建立變更類型來完成。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:AbortMultipartUpload",
                "s3:DeleteObject",
                "s3:PutObject"
            ],
            "Resource": "*"
        }
    ]
}
```

------

#### AWSSupportAccess
<a name="SAP"></a>

`AWSSupportAccess`

完整存取 支援。如需詳細資訊，請參閱 [入門 支援](https://docs.aws.amazon.com/awssupport/latest/user/getting-started.html)。如需 Premium Support 資訊，請參閱 [支援](https://aws.amazon.com/premiumsupport/)。

------
#### [ JSON ]

****  

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

------

#### AWSMarketplaceManageSubscriptions
<a name="MMS"></a>

`AWSMarketplaceManageSubscriptions` （公有 AWS受管政策）

訂閱、取消訂閱和檢視 AWS Marketplace 訂閱的許可。

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [{
		"Action": [
			"aws-marketplace:ViewSubscriptions",
			"aws-marketplace:Subscribe",
			"aws-marketplace:Unsubscribe"
		],
		"Effect": "Allow",
		"Resource": "*"
	}]
}
```

------

#### AWSCertificateManagerFullAccess
<a name="CMFA"></a>

`AWSCertificateManagerFullAccess`

完整存取 AWS Certificate Manager。如需詳細資訊，請參閱[AWS Certificate Manager](https://aws.amazon.com/certificate-manager/)。

[https://docs.aws.amazon.com/acm/latest/userguide/authen-awsmanagedpolicies.html#acm-full-access-managed-policy](https://docs.aws.amazon.com/acm/latest/userguide/authen-awsmanagedpolicies.html#acm-full-access-managed-policy) 資訊，（公有 AWS 受管政策）。

------
#### [ JSON ]

****  

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

------

#### AWSWAFFullAccess
<a name="WAF"></a>

`AWSWAFFullAccess`

完整存取 AWS WAF。如需詳細資訊，請參閱 [AWS WAF - Web Application Firewall](https://aws.amazon.com/waf/)。

[https://docs.aws.amazon.com/waf/latest/developerguide/access-control-identity-based.html](https://docs.aws.amazon.com/waf/latest/developerguide/access-control-identity-based.html) 資訊 （公有 AWS 受管政策）。此政策授予 AWS WAF 資源的完整存取權。

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [{
		"Action": [
			"waf:*",
			"waf-regional:*",
			"elasticloadbalancing:SetWebACL"
		],
		"Effect": "Allow",
		"Resource": "*"
	}]
}
```

------

#### ReadOnlyAccess
<a name="ROA"></a>

`ReadOnlyAccess`

在 AWS 主控台上唯讀存取所有 AWS 服務和資源。 AWS 啟動新服務時，AMS 會更新 ReadOnlyAccess 政策，為新服務新增唯讀許可。更新的許可會套用於政策連接到的所有主體實體。

這不會授予登入 EC2 主機或資料庫主機的能力。

如果您有作用中的 AWS 帳戶，則可以使用此連結 [ReadOnlyAccess](https://console.aws.amazon.com/iam/home?region=us-east-1#/policies/arn:aws:iam::aws:policy/ReadOnlyAccess$serviceLevelSummary) 來檢視整個 ReadOnlyAccess 政策。整個 ReadOnlyAccess 政策只要提供所有 的唯讀存取權即可 AWS 服務。以下是 ReadOnlyAccess 政策的部分摘錄。

**單一帳戶登陸區域 (SALZ)**：若要查看 AMS 單一帳戶登陸區域預設、非自訂的使用者角色政策，請參閱 [SALZ：預設 IAM 使用者角色](#json-default-role)，下一步。

## SALZ：預設 IAM 使用者角色
<a name="json-default-role"></a>

預設 AMS 單一帳戶登陸區域使用者角色的 JSON 政策陳述式。

**注意**  
SALZ 預設使用者角色可自訂，且可能因帳戶而異。提供尋找角色的說明。

以下是預設 SALZ 使用者角色的範例。若要確保您已為您設定政策，請執行 [https://docs.aws.amazon.com/cli/latest/reference/iam/get-role.html](https://docs.aws.amazon.com/cli/latest/reference/iam/get-role.html)命令。或者，前往 https：//[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 登入 AWS Identity and Access Management 主控台，然後選擇**角色**。

客戶唯讀角色是多個政策的組合。角色 (JSON) 的明細如下。

Managed Services 稽核政策：

Managed Services IAM ReadOnly 政策

Managed Services 使用者政策

```
	{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowCustomerToListTheLogBucketLogs",
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::mc-a*-logs-*"
      ],
      "Condition": {
        "StringLike": {
          "s3:prefix": [
            "aws/*",
            "app/*",
            "encrypted",
            "encrypted/",
            "encrypted/app/*"
          ]
        }
      }
    },
    {
      "Sid": "BasicAccessRequiredByS3Console",
      "Effect": "Allow",
      "Action": [
        "s3:ListAllMyBuckets",
        "s3:GetBucketLocation"
      ],
      "Resource": [
        "arn:aws:s3:::*"
      ]
    },
    {
      "Sid": "AllowCustomerToGetLogs",
      "Effect": "Allow",
      "Action": [
        "s3:GetObject*"
      ],
      "Resource": [
        "arn:aws:s3:::mc-a*-logs-*/aws/*",
        "arn:aws:s3:::mc-a*-logs-*/encrypted/app/*"
      ]
    },
    {
      "Sid": "AllowAccessToOtherObjects",
      "Effect": "Allow",
      "Action": [
        "s3:DeleteObject*",
        "s3:Get*",
        "s3:List*",
        "s3:PutObject*"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "AllowCustomerToListTheLogBucketRoot",
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::mc-a*-logs-*"
      ],
      "Condition": {
        "StringEquals": {
          "s3:prefix": [
            "",
            "/"
          ]
        }
      }
    },
    {
      "Sid": "AllowCustomerCWLConsole",
      "Effect": "Allow",
      "Action": [
        "logs:DescribeLogStreams",
        "logs:DescribeLogGroups"
      ],
      "Resource": [
        "arn:aws:logs:*:*:log-group:*"
      ]
    },
    {
      "Sid": "AllowCustomerCWLAccessLogs",
      "Effect": "Allow",
      "Action": [
        "logs:FilterLogEvents",
        "logs:GetLogEvents"
      ],
      "Resource": [
        "arn:aws:logs:*:*:log-group:/aws/*",
        "arn:aws:logs:*:*:log-group:/infra/*",
        "arn:aws:logs:*:*:log-group:/app/*",
        "arn:aws:logs:*:*:log-group:RDSOSMetrics:*:*"
      ]
    },
    {
      "Sid": "AWSManagedServicesFullAccess",
      "Effect": "Allow",
      "Action": [
        "amscm:*",
        "amsskms:*"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "ModifyAWSBillingPortal",
      "Effect": "Allow",
      "Action": [
        "aws-portal:Modify*"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "DenyDeleteCWL",
      "Effect": "Deny",
      "Action": [
        "logs:DeleteLogGroup",
        "logs:DeleteLogStream"
      ],
      "Resource": [
        "arn:aws:logs:*:*:log-group:*"
      ]
    },
    {
      "Sid": "DenyMCCWL",
      "Effect": "Deny",
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:DescribeLogStreams",
        "logs:FilterLogEvents",
        "logs:GetLogEvents",
        "logs:PutLogEvents"
      ],
      "Resource": [
        "arn:aws:logs:*:*:log-group:/mc/*"
      ]
    },
    {
      "Sid": "DenyS3MCNamespace",
      "Effect": "Deny",
      "Action": [
        "s3:*"
      ],
      "Resource": [
        "arn:aws:s3:::mc-a*-logs-*/encrypted/mc/*",
        "arn:aws:s3:::mc-a*-logs-*/mc/*",
        "arn:aws:s3:::mc-a*-logs-*-audit/*",
        "arn:aws:s3:::mc-a*-internal-*/*",
        "arn:aws:s3:::mc-a*-internal-*"
      ]
    },
    {
      "Sid": "ExplicitDenyS3CfnBucket",
      "Effect": "Deny",
      "Action": [
        "s3:*"
      ],
      "Resource": [
        "arn:aws:s3:::cf-templates-*"
      ]
    },
    {
      "Sid": "DenyListBucketS3LogsMC",
      "Action": [
        "s3:ListBucket"
      ],
      "Effect": "Deny",
      "Resource": [
        "arn:aws:s3:::mc-a*-logs-*"
      ],
      "Condition": {
        "StringLike": {
          "s3:prefix": [
            "auditlog/*",
            "encrypted/mc/*",
            "mc/*"
          ]
        }
      }
    },
    {
      "Sid": "DenyS3LogsDelete",
      "Effect": "Deny",
      "Action": [
        "s3:Delete*",
        "s3:Put*"
      ],
      "Resource": [
        "arn:aws:s3:::mc-a*-logs-*/*"
      ]
    },
    {
      "Sid": "DenyAccessToKmsKeysStartingWithMC",
      "Effect": "Deny",
      "Action": [
        "kms:*"
      ],
      "Resource": [
        "arn:aws:kms::*:key/mc-*",
        "arn:aws:kms::*:alias/mc-*"
      ]
    },
    {
      "Sid": "DenyListingOfStacksStartingWithMC",
      "Effect": "Deny",
      "Action": [
        "cloudformation:*"
      ],
      "Resource": [
        "arn:aws:cloudformation:*:*:stack/mc-*"
      ]
    },
    {
      "Sid": "AllowCreateCWMetricsAndManageDashboards",
      "Effect": "Allow",
      "Action": [
        "cloudwatch:PutMetricData"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "AllowCreateandDeleteCWDashboards",
      "Effect": "Allow",
      "Action": [
        "cloudwatch:DeleteDashboards",
        "cloudwatch:PutDashboard"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

Customer Secrets Manager 共用政策 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowSecretsManagerListSecrets",
      "Effect": "Allow",
      "Action": "secretsmanager:listSecrets",
      "Resource": "*"
    },
    {
      "Sid": "AllowCustomerAdminAccessToSharedNameSpaces",
      "Effect": "Allow",
      "Action": "secretsmanager:*",
      "Resource": [
        "arn:aws:secretsmanager:*:*:secret:ams-shared/*",
        "arn:aws:secretsmanager:*:*:secret:customer-shared/*"
      ]
    },
   {
      "Sid": "DenyCustomerGetSecretCustomerNamespace",
      "Effect": "Deny",
      "Action": "secretsmanager:GetSecretValue",
      "Resource": "arn:aws:secretsmanager:*:*:secret:customer-shared/*"
    },  
    {
      "Sid": "AllowCustomerReadOnlyAccessToAMSNameSpace",
      "Effect": "Deny",
      "NotAction": [
        "secretsmanager:Describe*",
        "secretsmanager:Get*",
        "secretsmanager:List*"
      ],
      "Resource": "arn:aws:secretsmanager:*:*:secret:ams-shared/*"
    }
  ]
}
```

------

Customer Marketplace 訂閱政策

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowMarketPlaceSubscriptions",
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:ViewSubscriptions",
        "aws-marketplace:Subscribe"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

------

# 安全事件記錄和監控
<a name="sec-log-mon"></a>

AMS 會持續監控受管環境是否有安全威脅。AMS 或您可能會偵測到安全事件。AMS 會根據國家標準技術研究所 (NIST) 的電腦安全事件處理指南，定期更新其自動化程序，以更好地偵測安全威脅。

# 端點安全 (EPS)
<a name="eps-defaults"></a>

您在 AMS Advanced 環境中佈建的資源會自動包含端點安全 (EPS) 監控用戶端的安裝。此程序可確保 24 小時全年無休監控和支援 AMS 進階受管資源。此外，AMS Advanced 會監控所有代理程式活動，並在偵測到任何安全事件時建立事件。

**注意**  
安全事件會視為事件處理；如需詳細資訊，請參閱[事件回應](https://docs.aws.amazon.com/managedservices/latest/userguide/sec-incident-response.html)。

端點安全提供反惡意軟體保護，特別是支援下列動作：
+ EC2 執行個體向 EPS 註冊
+ EC2 執行個體從 EPS 取消註冊
+ EC2 執行個體即時反惡意軟體保護
+ EPS 代理程式起始的心跳
+ EPS 還原隔離的檔案
+ EPS 事件通知
+ EPS 報告

AMS Advanced 使用 Trend Micro 進行端點安全 (EPS)。這些是預設的 EPS 設定。若要進一步了解 Trend Micro，請參閱 [Trend Micro Deep Security Help Center](https://help.deepsecurity.trendmicro.com/aws/welcome.html?redirected=true)；請注意，非 Amazon 連結可能會變更，恕不另行通知。

AMS 進階多帳戶登陸區域 (MALZ) 預設設定如下列各節所述；對於非預設 AMS 多帳戶登陸區域 EPS 設定，請參閱 [ AMS 進階多帳戶登陸區域 EPS 非預設設定](https://docs.aws.amazon.com/managedservices/latest/userguide/security-mgmt.html#malz-eps-settings)。

**注意**  
您可以自備 EPS，請參閱 [AMS 自備 EPS](https://docs.aws.amazon.com/managedservices/latest/userguide/ams-byoeps.html)。

## 一般 EPS 設定
<a name="general-eps-defaults"></a>

端點安全一般網路設定。


**EPS 預設值**  

| 設定 | 預設 | 
| --- | --- | 
| 防火牆連接埠 （執行個體的安全群組） | EPS Deep Security Manager 代理程式 (DSMs) 必須針對 Agent/Relay to Manager 通訊開啟連接埠 4120，以及針對 Manager Console 開啟連接埠 4119。EPS 轉送必須開啟連接埠 4122，管理員/客服人員才能轉送通訊。客戶執行個體傳入通訊不應開啟任何特定連接埠，因為客服人員會啟動所有請求。 | 
| 通訊方向 | 代理程式/應用程式啟動 | 
| 活動訊號間隔 | 十分鐘 | 
| 警示之前的遺失活動訊號數目 | Two | 
| 伺服器時間之間允許的偏離上限 （差異） | 無限制 | 
| 為非作用中 （已註冊但未上線） 虛擬機器引發離線錯誤 | 否 | 
| 預設政策 | 基本政策 （接下來說明） | 
| 啟用具有相同主機名稱的多部電腦 | 允許 | 
| 已提出待定更新的提醒 | 七天後 | 
| 更新排程 | AMS 以 Trend Micro Deep Security Manager (DSM) / Deep Security Agent (DSA) 軟體更新的每月發行週期為目標。不過，AMS 不會維護更新用的 SLA。AMS 開發人員團隊會在部署期間在整個機群中執行更新。 DSA/DSA 更新會記錄在 Trend Micro DSM 系統事件中，AMS 預設會在本機保留 13 週。如需廠商文件，請參閱 Trend Micro Deep Security Help Center 中的[系統事件](https://help.deepsecurity.trendmicro.com/12_0/aws/Events-Alerts/ref-events-system.html)。日誌也會匯出至 Amazon CloudWatch 中的日誌群組 /aws/ams/eps/var/log/DSM.log。 | 
| 更新來源 | Trend Micro Update Server (https://ipv6-iaus.trendmicro.com/iau\$1server.dll/：//) | 
| 事件或日誌資料刪除 | 事件和日誌會在七天後從 DSM 資料庫刪除。 | 
| 保留代理程式軟體版本 | 最多五個 | 
| 保留最新的規則更新 | 最多十個 | 
| 日誌儲存 | 根據預設，日誌檔案會安全地存放在 Amazon S3 中，但您也可以將其封存至 Amazon Glacier，以協助滿足稽核和合規要求。 | 

## 基本政策
<a name="base-eps-policy"></a>

端點安全基礎政策預設設定。


**EPS 基本政策**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/eps-defaults.html)

## 反惡意軟體
<a name="eps-anti-malware-defaults"></a>

端點安全反惡意軟體設定。


**EPS 反惡意軟體預設值**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/eps-defaults.html)

# 惡意軟體緩解程序
<a name="malware-mitigation"></a>

AMS 使用 Trend Micro 的 Deep Security Platform （反惡意軟體系統） 來偵測和回應 AMS 受管執行個體上的惡意軟體。根據預設，針對 Windows 和 Linux 作業系統，Trend Micro 偵測代理程式會在所有 Amazon EC2 執行個體上執行，包括共用服務和私有子網路中的執行個體。反惡意軟體系統會連線至 AMS 監控，以便在偵測到惡意軟體時產生事件。如果有客戶影響，事件會呈報至事件管理程序 （如需詳細資訊，請參閱 [AMS 事件回應](sec-incident-response.md))。雖然 AMS 會評估影響，但會通知您，並嘗試減輕影響。

當 Trend Micro 發佈更新時，會自動更新 Trend Micro 反惡意軟體定義。

在應用程式加入期間，您會指出在執行個體上發現惡意軟體時，您希望 AMS 採取的動作：
+ 確定隔離的檔案在允許清單上，將其從隔離中移除並傳回至檔案系統。
+ 刪除隔離的檔案，將其從執行個體中移除。
+ 暫停執行個體並加以取代。然後，暫停的執行個體可供您掛載以進行鑑識研究。

應用程式加入後：
+ 當反惡意軟體系統在執行個體上發現惡意軟體時，AMS 會自動隔離惡意軟體。這會觸發事件和後續調查。
+ AMS 透過服務通知通知您事件，並開始遵循您選取的預設緩解動作。
+ 如果您尚未選擇預設動作，AMS 會詢問您要採取的動作。收到指示後，AMS 會執行選取的動作並通知您。如果適用，AMS 會在動作完成後再次通知您，包括鑑識分析所需的詳細資訊。

# 在 Trend Micro Deep Security 中啟用 IDS 和 IPS
<a name="gui-enable-IPSIDS"></a>

您可以請求 AMS 為您的帳戶啟用 Trend Micro 入侵偵測系統 (IDS) 和入侵保護系統 (IPS)，非預設功能。

若要這樣做，請提交更新請求 （管理 \$1 其他 \$1 其他 \$1 更新），並包含接收 IDS 和 IPS 通知的電子郵件地址清單。這些地址會新增至您帳戶中的 SNS 主題，AMS 會為您建立該主題。

**注意**  
AMS 無法新增任何可能干擾我們提供其他 AMS 服務能力的 Trend Micro 服務。

# 完整系統惡意軟體掃描
<a name="malware-full-system-scans"></a>

支付卡產業資料安全標準 (PCI DSS) 需要完整的系統惡意軟體掃描，這些掃描預設為在您的 AMS 受管 VPC 上啟用。完整系統掃描設定為在2AM 點 （在伺服器上設定的時區） 進行，因為它們使用大量的 CPU。除了一般惡意軟體掃描之外，還需使用大量 CPU。

有新的管理變更類型 (CT) **停用惡意軟體掃描**，可讓您停用完整的系統惡意軟體掃描。您可以在 管理 \$1 主機安全 \$1 完整系統掃描 \$1 停用分類、變更 ID ct-1pybwg08h8qsz 中找到 CT。若要重新啟用掃描，請使用管理 \$1 其他 \$1 其他 \$1 更新 CT。停用完整系統掃描不會停用您的一般惡意軟體掃描。

## Amazon Inspector 安全性
<a name="inspector-sec"></a>

Amazon Inspector 服務會監控 AMS 受管堆疊的安全性。Amazon Inspector 是一種自動化安全評估服務，可協助識別部署在 上之基礎設施的安全性和合規性漏洞 AWS。Amazon Inspector 安全評估可讓您檢查 Amazon EC2 執行個體中的意外網路可存取性和漏洞，以自動評估堆疊是否存在暴露、漏洞和與最佳實務的偏差。執行評估後，Amazon Inspector 會依據嚴重性層級，產生詳細的安全調查結果清單。Amazon Inspector 評估會以映射至常見安全最佳實務和定義的預先定義規則套件提供。 AWS 安全研究人員會定期更新這些規則。如需 Amazon Inspector 的詳細資訊，請前往 [Amazon Inspector](https://aws.amazon.com/inspector)。

**AMS Amazon Inspector FAQs**
+ 根據預設，Amazon Inspector 是否安裝在我的 AMS 帳戶中？

  否。Amazon Inspector 不屬於預設 AMI 建置或工作負載擷取。
+ 如何存取和安裝 Amazon Inspector？

  提交 RFC （管理 \$1 其他 \$1 其他 \$1 建立） 以向 Inspector 請求帳戶存取和安裝，而 AMS 操作團隊將修改 Customer\$1ReadOnly\$1Role 以提供 Amazon Inspector 主控台存取 （沒有 SSM 存取）。
+ 是否必須在要評估的所有 Amazon EC2 執行個體上安裝 Amazon Inspector Agent？ Amazon EC2 

  否，任何 Amazon EC2 執行個體都可以在沒有代理程式的情況下執行具有網路連線能力規則套件的 Amazon Inspector 評估。 Amazon EC2 主機評估規則套件需要 代理程式。如需代理程式安裝的詳細資訊，請參閱[安裝 Amazon Inspector Agents](https://docs.aws.amazon.com/inspector/latest/userguide/inspector_installing-uninstalling-agents.html)。
+ 此服務是否需要支付額外費用？

  是。您可以在 Amazon Inspector 定價網站上找到 [Amazon Inspector 定價](https://aws.amazon.com/inspector/pricing/)。
+ 什麼是 Amazon Inspector 調查結果？

  調查結果是在所選評估目標的 Amazon Inspector 評估期間發現的潛在安全問題。調查結果會顯示在 Amazon Inspector 主控台或 API 中，並同時包含安全問題的詳細說明和解決這些問題的建議。
+ 是否提供 Amazon Inspector 評估的報告？

  是。評估報告詳細說明了評估過程中的測試內容和評估結果。您的評估結果是標準格式的報告，您可以在團隊內分享修復動作的成果，豐富合規稽核資料或儲存以供將來參考。成功完成 Amazon Inspector 評估報告後，即可為評估執行產生該報告。
+ 我可以使用標籤來識別要執行 Amazon Inspector 報告的堆疊嗎？

  是。
+ AMS Operations 團隊是否可以存取 Amazon Inspector 評估結果？

  是。有權存取 AWS 中 Amazon Inspector 主控台的任何人都可以檢視問題清單和評估報告。
+ AMS Operations 團隊是否會根據 Amazon Inspector 報告的調查結果建議或採取動作？

  否。如果您想要根據 Amazon Inspector 報告的調查結果進行變更，必須透過 RFC （管理 \$1 其他 \$1 其他 \$1 更新） 請求變更。
+ 當我執行 Amazon Inspector 報告時，是否會通知 AMS？

  當您請求 Amazon Inspector 存取時，執行 RFC 的 AMS Operator 會向您的 CSDM 通知請求。

如需詳細資訊，請參閱 [Amazon Inspector FAQs](https://aws.amazon.com/inspector/faqs/)。

# AMS 事件回應
<a name="sec-incident-response"></a>

AMS 使用傳統的 IT 服務管理 (ITSM) 事件管理最佳實務，在需要時盡快還原服務。

我們透過全球各地的多個操作中心提供全年無休follow-the-sun支援，讓專屬的操作員主動監控儀表板和事件佇列。

我們的營運工程師使用內部事件追蹤工具來識別、記錄、分類、排定優先順序、診斷、解決和關閉事件，並透過 AMS 主控台或透過 支援 API 提供所有這些活動的更新。我們的運算子，其中許多已在各種技術設定檔和角色中花費 AWS Premium Support 的時間，利用各種內部 支援 工具來協助處理所有這些活動。這些運算子非常熟悉 AMS 支援的基礎設施，並具備專家層級的技術技能來解決所有已識別的支援問題。在極少數情況下，我們的營運商需要協助，Premium Support and AWS Service 團隊可視需要提供協助。

在高優先順序事件影響關鍵工作負載的情況下，AMS 會建議基礎設施還原。疑難排解問題或從已知的良好備份還原之間，通常存在權衡，而客戶因服務停機時間的風險和影響是決定因素。如果您有時間對問題進行故障診斷，AMS 會為您提供協助，但如果急迫性很高，我們可以立即啟動還原。

**注意**  
不屬於堆疊範本或資料還原的暫時性資料會遺失。AMS 會盡合理努力在 AWS 服務方案無法使用時執行基礎設施還原。一旦 AWS 服務方案可用，基礎設施還原即完成。  
如果您未依照 AMS 的建議授權基礎設施還原，則不符合事件解決時間的 AMS 服務承諾的服務額度資格。

# 法規遵循驗證
<a name="sec-compli-valid"></a>

AMS 部署和管理 AWS Config 規則和修補動作的程式庫，以防止可能降低帳戶安全性和操作完整性的錯誤設定。

例如，建立 Amazon S3 儲存貯體時， AWS Config 可以根據要求 Amazon S3 儲存貯體拒絕公開讀取存取的規則來評估 Amazon S3 儲存貯體。如果 Amazon S3 儲存貯體政策或儲存貯體存取控制清單 (ACL) 允許公開讀取存取， 會將儲存貯體和規則 AWS Config 標記為不合規。這些會根據資源的評估結果，將資源 AWS Config 規則 標記為合規、不合規或不適用。如需 AWS Config 服務的詳細資訊，請參閱 [AWS Config 開發人員指南](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)。

您可以使用 AWS Config 主控台、 AWS CLI 或 AWS Config API 來檢視您帳戶中部署的規則，以及規則和資源的合規狀態。如需詳細資訊，請參閱 AWS Config 文件：[檢視組態合規](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_view-compliance.html)。

**注意**  
如需本主題的其他資訊，請參閱 AWS Artifact 報告。如需詳細資訊，請參閱[在 AWS Artifact 中下載報告](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html)。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。此資訊不包含在本使用者指南中，因為它包含敏感的安全內容。

# 檢視您 合規狀態的多帳戶登陸區域 AWS Config 規則
<a name="malz-view-compliance"></a>

AMS 多帳戶登陸區域會利用 AWS Config 彙整工具服務，建立所有帳戶的合規集中檢視。這表示您可以在安全帳戶中的彙總工具下，查看 AMS 多帳戶登陸區域環境中 AWS Config 規則 所有 AWS Config 的合規狀態。

以下是 AWS Config 彙總工具的範例，顯示 AWS Config 規則 跨 帳戶的中央合規狀態。

![\[AWS Config dashboard showing compliant rules across regions and accounts.\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/images/ams-malz-dd-agg-rules.png)


如需詳細資訊，請參閱 [Config Aggregator](https://docs.aws.amazon.com/config/latest/developerguide/aggregate-data.html) 的 AWS 文件。
+ AMS 如何使用 AWS Config 規則？

  AMS 會建立 AWS Config 規則 ，以便根據規則中指定的條件來查看 AWS 資源的組態。如果規則不合規，您可以請求變更，AMS Ops 團隊將與您合作採取更正動作。
+ 在這種情況下，您會在 AMS 帳戶中看到下列變更：
  + AWS Config 規則 在 AWS Config > 規則下
  + 包含其 Lambda 函數的自訂 Config 規則存在於您的帳戶中
  + 安全帳戶中的 Config 彙總器和所有帳戶中的 Config 授權 （僅限多帳戶登陸區域）

以下是 的範例 AWS Config 規則 ，其合規評估結果如下所示：

![\[AWS Config 規則 dashboard showing compliant status for multiple security-related rules.\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/images/ams-malz-dd-rules-2.png)


若要進一步了解 AWS Config，請參閱：
+ AWS Config：[什麼是 Config？](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)
+ AWS Config 規則：[使用規則評估資源](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html)
+ AWS Config 規則：[動態合規檢查：AWS Config 規則 – 雲端資源的動態合規檢查](https://aws.amazon.com/blogs/aws/aws-config-rules-dynamic-compliance-checking-for-cloud-resources/)
+ AWS Config 彙總工具：[多帳戶多區域資料彙總](https://docs.aws.amazon.com/config/latest/developerguide/aggregate-data.html)

# AMS 多帳戶登陸區域服務控制政策限制
<a name="apx-scps-malz"></a>

本節已修訂，因為它包含敏感的 AMS 安全相關資訊。此資訊可透過 AMS 主控台**文件**取得。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。

# 恢復能力
<a name="sec-resilience"></a>

 AWS 全球基礎設施是以 AWS 區域 和 可用區域為基礎建置。 AWS 區域 提供多個實體分隔和隔離的可用區域，這些可用區域與低延遲、高輸送量和高備援聯網連接。透過可用區域，您可以設計與操作的應用程式和資料庫，在可用區域之間自動容錯移轉而不會發生中斷。可用區域的可用性、容錯能力和擴展能力，均較單一或多個資料中心的傳統基礎設施還高。

如需 AWS 區域和可用區域的詳細資訊，請參閱 [AWS 全球基礎設施](https://aws.amazon.com/about-aws/global-infrastructure)。

# 基礎架構安全
<a name="sec-infrastructure"></a>

**注意**  
如需本主題的其他資訊，請參閱 AWS Artifact 報告。如需詳細資訊，請參閱[在 AWS Artifact 中下載報告](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html)。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。此資訊不包含在本使用者指南中，因為它包含敏感的安全內容。



# end-of-support作業系統的安全控制
<a name="ams-eos-sec-controls-os"></a>

在作業系統製造商「end-of-support」或 EOS 一般支援期間之外且未收到安全更新的作業系統，會有更高的安全風險。

AWS 提供一些 服務，以協助處理end-of-support作業系統。如需 Windows end-of-support的相關資訊，請參閱 [ Windows Server End-of-Support遷移計劃](https://aws.amazon.com/emp-windows-server/)。

**注意**  
如需本主題的其他資訊，請參閱 AWS Artifact 報告。如需詳細資訊，請參閱[在 AWS Artifact 中下載報告](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html)。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。此資訊不包含在本使用者指南中，因為它包含敏感的安全內容。

## 使用安全群組
<a name="sec-group-intro"></a>

安全群組可做為一種虛擬防火牆，控制一或多個執行個體的流量。AMS 安全群組可讓您設定執行個體層級的傳入流量規則和傳出流量規則。您可以建立安全群組，並指定 AMS 帳戶、Amazon EC2 執行個體、Amazon RDS 資料庫執行個體、負載平衡器、Deep Security Manager (DSM) 複寫執行個體、EFS 掛載目標和 ElastiCache 叢集中的資源，以與安全群組建立關聯。建立關聯後，安全群組中設定的規則會限制往返這些執行個體的流量。

若要進一步了解一般 AWS 安全性，請參閱 [Linux 執行個體的安全性、身分與合規最佳實務](https://aws.amazon.com/architecture/security-identity-compliance/)[和 Amazon EC2 安全群組](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html)。

AMS 現在有一組用於建立和管理安全群組的變更類型：
+ 部署 \$1 進階堆疊元件 \$1 安全群組 \$1 建立 (ct-1oxx2g2d7hc90)
+ 管理 \$1 進階堆疊元件 \$1 安全群組 \$1 刪除 (ct-3cp96z7r065e4)
+ 管理 \$1 進階堆疊元件 \$1 安全群組 \$1 更新 (ct-3memthlcmvc1b)

如需範例，請參閱[安全群組](https://docs.aws.amazon.com/managedservices/latest/userguide/ex-sec-group-create-delete-update.html)。

# 安全群組
<a name="about-security-groups"></a>

在 AWS VPCs 中，AWS 安全群組充當虛擬防火牆，控制一或多個堆疊 （執行個體或一組執行個體） 的流量。啟動堆疊時，它會與一或多個安全群組相關聯，以決定允許哪些流量到達該群組：
+ 對於公有子網路中的堆疊，預設安全群組接受來自所有位置 （網際網路） 的 HTTP (80) 和 HTTPS (443) 流量。堆疊也接受來自您公司網路和 AWS 堡壘的內部 SSH 和 RDP 流量。然後，這些堆疊可以透過任何連接埠輸出到網際網路。它們也可以輸出到您的私有子網路和公有子網路中的其他堆疊。
+ 私有子網路中的堆疊可以輸出到私有子網路中的任何其他堆疊，而堆疊中的執行個體可以完全透過任何通訊協定互相通訊。

**重要**  
私有子網路上堆疊的預設安全群組允許私有子網路中的所有堆疊與該私有子網路中的其他堆疊通訊。如果您想要限制私有子網路中堆疊之間的通訊，您必須建立新的安全群組來描述限制。例如，如果您想要限制與資料庫伺服器的通訊，以便該私有子網路中的堆疊只能透過特定連接埠從特定應用程式伺服器通訊，請請求特殊安全群組。本節將說明如何執行此操作。

## 預設安全群組
<a name="default-sec-groups"></a>

------
#### [ MALZ ]

下表說明堆疊的預設傳入安全群組 (SG) 設定。SG 名為「SentinelDefaultSecurityGroupPrivateOnly-vpc-ID」，其中 *ID* 是 AMS 多帳戶登陸區域帳戶中的 VPC ID。允許所有流量透過此安全群組傳出至 "mc-initial-garden-SentinelDefaultSecurityGroupPrivateOnly" （允許堆疊子網路中的所有本機流量）。

第二個安全群組「SentinelDefaultSecurityGroupPrivateOnly」允許所有流量傳出至 0.0.0.0/0。

**提示**  
如果您要為 AMS 變更類型選擇安全群組，例如 EC2 建立或 OpenSearch 建立網域，您可以使用此處所述的其中一個預設安全群組，或您建立的安全群組。您可以在 AWS EC2 主控台或 VPC 主控台中找到每個 VPC 的安全群組清單。

還有其他預設安全群組用於內部 AMS 用途。


**AMS 預設安全群組 （傳入流量）**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/about-security-groups.html)

------
#### [ SALZ ]

下表說明堆疊的預設傳入安全群組 (SG) 設定。SG 名為 "mc-initial-garden-SentinelDefaultSecurityGroupPrivateOnly-*ID*"，其中 *ID* 是唯一的識別符。允許所有流量透過此安全群組傳出至 "mc-initial-garden-SentinelDefaultSecurityGroupPrivateOnly" （允許堆疊子網路中的所有本機流量）。

第二個安全群組 "mc-initial-garden-SentinelDefaultSecurityGroupPrivateOnlyEgressAll-ID" 允許所有流量傳出至 0.0.0.0/0。**

**提示**  
如果您要為 AMS 變更類型選擇安全群組，例如 EC2 建立或 OpenSearch 建立網域，您可以使用此處所述的其中一個預設安全群組，或您建立的安全群組。您可以在 AWS EC2 主控台或 VPC 主控台中找到每個 VPC 的安全群組清單。

還有其他預設安全群組用於內部 AMS 用途。


**AMS 預設安全群組 （傳入流量）**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/managedservices/latest/userguide/about-security-groups.html)

------

## 建立、變更或刪除安全群組
<a name="create-security-group"></a>

您可以請求自訂安全群組。如果預設安全群組不符合應用程式或組織的需求，您可以修改或建立新的安全群組。這類請求會被視為需要核准，並由 AMS 操作團隊審核。

若要在堆疊和 VPCs 外部建立安全群組，請使用`Deployment | Advanced stack components | Security group | Create (review required)`變更類型 (ct-1oxx2g2d7hc90) 提交 RFC。

針對 Active Directory (AD) 安全群組修改，請使用下列變更類型：
+ 若要新增使用者：使用 Management \$1 Directory Service \$1 使用者和群組 \$1 新增使用者至群組 【ct-24pi85mjtza8k】 提交 RFC
+ 若要移除使用者：使用管理 \$1 Directory Service \$1 使用者和群組 \$1 從群組移除使用者 【ct-2019s9y3nfml4】 提交 RFC

**注意**  
使用「需要檢閱」CTs時，AMS 建議您使用 ASAP **排程選項 **（在主控台中選擇 **ASAP**，在 API/CLI 中保留開始和結束時間空白），因為這些 CTs 需要 AMS 運算子來檢查 RFC，並在核准和執行之前與您通訊。如果您排程這些 RFCs，請務必至少允許 24 小時。如果未在排定的開始時間之前進行核准，則會自動拒絕 RFC。

## 尋找安全群組
<a name="find-security-group"></a>

若要尋找連接到堆疊或執行個體的安全群組，請使用 EC2 主控台。找到堆疊或執行個體後，您可以看到連接到該堆疊或執行個體的所有安全群組。

如需在命令列尋找安全群組並篩選輸出的方法，請參閱 [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-security-groups.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-security-groups.html)。

# AMS 預防性和偵測性控制程式庫
<a name="scp-library"></a>

AWS Managed Services (AMS) 為您提供經過驗證的服務控制政策 (SCPs) 和 ConfigRules 的精選程式庫/目錄，可用於改善您的安全狀態並減輕 AMS 帳戶中的合規差距。

**Topics**
+ [統籌 SCPs和 Config 規則](scp-library-compliance.md)
+ [Config 規則的自訂通知](scp-lib-custom-notice.md)

# 統籌 SCPs和 Config 規則
<a name="scp-library-compliance"></a>

AMS Advanced 的統籌 SCPs 和 Config 規則。
+ **服務控制政策 (SCPs)**：提供的 SCPs 是預設 AMS 政策的補充。

  您可以將這些程式庫控制與預設的程式庫控制搭配使用，以滿足特定的安全需求。
+ **組態規則**：AMS 建議除了預設 AMS 組態規則之外，還要套用一致性套件 （請參閱 AWS Config [指南中的一致性套件](https://docs.aws.amazon.com/config/latest/developerguide/conformance-packs.html)) （如需預設規則，請參閱 AMS 成品）。一致性套件涵蓋大部分的合規要求，AWS 會定期更新這些要求。

  此處列出的規則可用於涵蓋 Conformance Packs 未涵蓋的使用案例特定差距

**注意**  
隨著 AMS 預設規則和一致性套件隨著時間更新，您可能會看到這些規則的重複。  
AMS 建議定期清除重複的 Config 規則。  
對於 AMS Advanced，Config 規則不應使用自動修復 （請參閱[透過 AWS Config 規則修復不合規 AWS 資源](https://docs.aws.amazon.com/config/latest/developerguide/remediation.html))，以避免out-of-band變更。

## SCP-AMS-001：限制 EBS 建立
<a name="scp-ebs-create"></a>

如果您未啟用加密，請防止建立 EBS 磁碟區。

```
{
      "Condition": {
        "Bool": {
          "ec2:Encrypted": "false"
        }
      },
      "Action": "ec2:CreateVolume",
      "Resource": "*",
      "Effect": "Deny"
    }
```

## SCP-AMS-002：限制 EC2 啟動
<a name="scp-ec2-launch"></a>

如果未加密 EBS 磁碟區，請防止 EC2 執行個體啟動。這包括拒絕從未加密 AMIs 啟動 EC2，因為此 SCP 也適用於根磁碟區。

```
{
      "Condition": {
        "Bool": {
          "ec2:Encrypted": "false"
        }
      },
      "Action": "ec2:RunInstances",
      "Resource": "arn:aws:ec2:*:*:volume/*",
      "Effect": "Deny"
    }
```

## SCP-ADV-001：限制 RFC 提交
<a name="scp-restrict-rfcs"></a>

限制預設 AMS 角色提交特定的自動化 RFCs例如**建立 VPC** **或刪除 VPC**。如果您想要將更精細的許可套用至聯合角色，這會很有幫助。

例如，您可能希望預設值`AWSManagedServicesChangeManagement Role`能夠提交大多數可用的 RFCs，但允許建立和刪除 VPC、建立其他子網路、停止應用程式帳戶、更新或刪除 SAML 身分提供者的 RFC 除外：

## SCP-AMS-003：限制在 AMS 中建立 EC2 或 RDS
<a name="scp-restrict-ec2-rds-creation"></a>

防止建立沒有特定標籤的 Amazon EC2 和 RDS 執行個體，同時允許 AMS 預設`AMS Backup IAM`角色這樣做。這是災難復原或 DR 所需的。

```
{
    "Sid": "DenyRunInstanceWithNoOrganizationTag",
    "Effect": "Deny",
    "Action": [
        "ec2:RunInstances",
        "rds:CreateDBInstance"
    ],
    "Resource": [
        "arn:aws:ec2:*:*:instance/*",
        "arn:aws:ec2:*:*:volume/*",
        "arn:aws:rds:*:*:db:*"
    ],
    "Condition": {
        "Null": {
            "aws:RequestTag/organization": "true"
        },
        "StringNotLike": {
            "aws:PrincipalArn": [
                "arn:aws:iam::<Account_Number>:role/ams-backup-iam-role"
            ]
        }
    }
}
```

## SCP-AMS-004：限制 S3 上傳
<a name="scp-prevent-s3-uploads"></a>

防止上傳未加密的 S3 物件。

```
{
            "Sid": "DenyUnencryptedS3Uploads",
            "Effect": "Deny",
            "Action": "s3:PutObject",
            "Resource": "*",
            "Condition": {
                "StringNotLike": {
                    "s3:x-amz-server-side-encryption": ["aws:kms", "AES256"]
                },
                "Null": {
                    "s3:x-amz-server-side-encryption": "false"
                }
            }
        }
    ]
}
```

## SCP-AMS-005：限制 API 和主控台存取
<a name="scp-prevent-access"></a>

針對來自已知不良 IP 地址的請求，防止 AWS 主控台和 API 存取，視客戶 InfoSec 的判斷而定。

## SCP-AMS-006：防止 IAM 實體從組織中移除成員帳戶
<a name="scp-prevent-iam-entity"></a>

防止 AWS Identity and Access Management 實體從組織中移除成員帳戶。

```
{
  "Effect": "Deny",
  "Action": ["organizations:LeaveOrganization"],
  "Resource": ["*"]
}
```

## SCP-AMS-007：防止與組織外部帳戶共用資源
<a name="scp-prevent-sharing-resources"></a>

防止與 AWS 組織外部帳戶共用資源

```
  {
    "Effect": "Deny",
    "Action": [
      "ram:*"
    ],
    "Resource": [
      "*"
    ],
    "Condition": {
      "Bool": {
        "ram:AllowsExternalPrincipals": "true"
      }
    }
  },
  {
    "Effect": "Deny",
    "Action": [
      "ram:CreateResourceShare",
      "ram:UpdateResourceShare"
    ],
    "Resource": "*",
    "Condition": {
      "Bool": {
        "ram:RequestedAllowsExternalPrincipals": "true"
      }
    }
  }
```

## SCP-AMS-008：防止與組織或組織單位 (OUs共用
<a name="scp-prevent-sharing-with-organizations"></a>

防止與組織中的帳戶和/或 OU 共用資源。

```
{
  "Effect": "Deny",
  "Action": [
    "ram:CreateResourceShare",
    "ram:AssociateResourceShare"
  ],
  "Resource": "*",
  "Condition": {
    "ForAnyValue:StringLike": {
      "ram:Principal": [
        "arn:aws:organizations::*:account/o-${OrganizationId}/${AccountId}",
        "arn:aws:organizations::*:ou/o-${OrganizationId}/ou-${OrganizationalUnitId}"
      ]
    }
  }
}
```

## SCP-AMS-009：防止使用者接受資源共享邀請
<a name="scp-prevent-resource-share-acceptance"></a>

防止成員帳戶接受來自 AWS RAM 加入資源共享的邀請。此 API 不支援任何條件，並防止僅從外部帳戶共用。

```
{
  "Effect": "Deny",
  "Action": ["ram:AcceptResourceShareInvitation"],
  "Resource": ["*"]
}
```

## SCP-AMS-010：防止帳戶區域啟用和停用動作
<a name="scp-prevent-account-region-enable-disable"></a>

防止啟用或停用您 AWS 帳戶的任何新 AWS 區域。

```
{
  "Effect": "Deny",
  "Action": [
    "account:EnableRegion",
    "account:DisableRegion"
  ],
  "Resource": "*"
}
```

## SCP-AMS-011：防止帳單修改動作
<a name="scp-prevent-billing-modification"></a>

防止對帳單和付款組態進行修改。

```
{
  "Effect": "Deny",
  "Action": [
    "aws-portal:ModifyBilling",
    "aws-portal:ModifyAccount",
    "aws-portal:ModifyPaymentMethods"
  ],
  "Resource": "*"
}
```

## SCP-AMS-012：防止刪除或修改特定 CloudTrails
<a name="scp-prevent-cloudtrail-modification"></a>

防止修改特定 AWS CloudTrail 線索。

```
{
  "Effect": "Deny",
  "Action": [
    "cloudtrail:DeleteEventDataStore",
    "cloudtrail:DeleteTrail",
    "cloudtrail:PutEventSelectors",
    "cloudtrail:PutInsightSelectors",
    "cloudtrail:UpdateEventDataStore",
    "cloudtrail:UpdateTrail",
    "cloudtrail:StopLogging"
  ],
  "Resource": [
    "arn:${Partition}:cloudtrail:${Region}:${Account}:trail/${TrailName}"
  ]
}
```

## SCP-AMS-013：防止停用預設 EBS 加密
<a name="scp-prevent-disable-ebs-encryption"></a>

防止停用預設 Amazon EBS 加密。

```
{
  "Effect": "Deny",
  "Action": [
    "ec2:DisableEbsEncryptionByDefault"
  ],
  "Resource": "*"
}
```

## SCP-AMS-014：防止建立預設 VPC 和子網路
<a name="scp-prevent-default-vpc-subnet-creation"></a>

防止建立預設 Amazon VPC 和子網路。

```
{
  "Effect": "Deny",
  "Action": [
    "ec2:CreateDefaultSubnet",
    "ec2:CreateDefaultVpc"
  ],
  "Resource": "*"
}
```

## SCP-AMS-015：防止停用和修改 GuardDuty
<a name="scp-prevent-default-vpc-subnet-creation"></a>

防止修改或停用 Amazon GuardDuty。

```
{
  "Effect": "Deny",
  "Action": [
    "guardduty:AcceptInvitation",
    "guardduty:ArchiveFindings",
    "guardduty:CreateDetector",
    "guardduty:CreateFilter",
    "guardduty:CreateIPSet",
    "guardduty:CreateMembers",
    "guardduty:CreatePublishingDestination",
    "guardduty:CreateSampleFindings",
    "guardduty:CreateThreatIntelSet",
    "guardduty:DeclineInvitations",
    "guardduty:DeleteDetector",
    "guardduty:DeleteFilter",
    "guardduty:DeleteInvitations",
    "guardduty:DeleteIPSet",
    "guardduty:DeleteMembers",
    "guardduty:DeletePublishingDestination",
    "guardduty:DeleteThreatIntelSet",
    "guardduty:DisableOrganizationAdminAccount",
    "guardduty:DisassociateFromMasterAccount",
    "guardduty:DisassociateMembers",
    "guardduty:InviteMembers",
    "guardduty:StartMonitoringMembers",
    "guardduty:StopMonitoringMembers",
    "guardduty:TagResource",
    "guardduty:UnarchiveFindings",
    "guardduty:UntagResource",
    "guardduty:UpdateDetector",
    "guardduty:UpdateFilter",
    "guardduty:UpdateFindingsFeedback",
    "guardduty:UpdateIPSet",
    "guardduty:UpdateMalwareScanSettings",
    "guardduty:UpdateMemberDetectors",
    "guardduty:UpdateOrganizationConfiguration",
    "guardduty:UpdatePublishingDestination",
    "guardduty:UpdateThreatIntelSet"
  ],
  "Resource": "*"
}
```

## SCP-AMS-016：防止根使用者活動
<a name="scp-prevent-root-user-activity"></a>

防止根使用者執行任何動作。

```
{
  "Action": "*",
  "Resource": "*",
  "Effect": "Deny",
  "Condition": {
    "StringLike": {
      "aws:PrincipalArn": [
        "arn:aws:iam::*:root"
      ]
    }
  }
}
```

## SCP-AMS-017：防止為根使用者建立存取金鑰
<a name="scp-prevent-access-key-creation"></a>

防止為根使用者建立存取金鑰。

```
{
  "Effect": "Deny",
  "Action": "iam:CreateAccessKey",
  "Resource": "arn:aws:iam::*:root"
}
```

## SCP-AMS-018：防止停用 S3 帳戶公有存取區塊
<a name="scp-prevent-disabling-s3-public-access-block"></a>

防止停用 Amazon S3 帳戶公有存取區塊。這可防止帳戶中的任何儲存貯體變成公有。

```
{
  "Effect": "Deny",
  "Action": "s3:PutAccountPublicAccessBlock",
  "Resource": "*"    
}
```

## SCP-AMS-019：防止停用 AWS Config 或修改 Config 規則
<a name="scp-prevent-modifying-config-rules"></a>

防止停用或修改 AWS Config 規則。

```
{
  "Effect": "Deny",
  "Action": [
    "config:DeleteConfigRule",
    "config:DeleteConfigurationRecorder",
    "config:DeleteDeliveryChannel",
    "config:DeleteEvaluationResults",
    "config:StopConfigurationRecorder"
  ],
  "Resource": "*"
}
```

## SCP-AMS-020：防止所有 IAM 動作
<a name="scp-prevent-iam-actions"></a>

防止所有 IAM 動作。

```
{
  "Effect": "Deny",
  "Action": [
    "iam:*"
  ],
  "Resource": "*"
}
```

## SCP-AMS-021：防止刪除 CloudWatch Logs 群組和串流
<a name="scp-prevent-iam-actions"></a>

防止刪除 Amazon CloudWatch Logs 群組和串流。

```
{
  "Effect": "Deny",
  "Action": [
    "logs:DeleteLogGroup",
    "logs:DeleteLogStream"
  ],
  "Resource": "*"
}
```

## SCP-AMS-022：防止 Glacier 刪除
<a name="scp-prevent-glacier-deletion"></a>

防止刪除 Amazon Glacier。

```
{
  "Effect": "Deny",
  "Action": [
    "glacier:DeleteArchive",
    "glacier:DeleteVault"
  ],
  "Resource": "*"
}
```

## SCP-AMS-023：防止刪除 IAM Access Analyzer
<a name="scp-prevent-iam-access-analyzer-deletion"></a>

防止刪除 IAM Access Analyzer。

```
{
  "Action": [
    "access-analyzer:DeleteAnalyzer"
  ],
  "Resource": "*",
  "Effect": "Deny"
}
```

## SCP-AMS-024：防止修改 Security Hub
<a name="scp-prevent-security-hub-modification"></a>

防止刪除 AWS Security Hub CSPM。

```
{
  "Action": [
    "securityhub:DeleteInvitations",
    "securityhub:DisableSecurityHub",
    "securityhub:DisassociateFromMasterAccount",
    "securityhub:DeleteMembers",
    "securityhub:DisassociateMembers"
  ],
  "Resource": "*",
  "Effect": "Deny"
}
```

## SCP-AMS-025：防止在 Directory Service 下刪除
<a name="scp-prevent-directory-service-deletion"></a>

防止刪除 下的資源 Directory Service。

```
{
  "Action": [
    "ds:DeleteDirectory",
    "ds:DeleteLogSubscription",
    "ds:DeleteSnapshot",
    "ds:DeleteTrust",
    "ds:DeregisterCertificate",
    "ds:DeregisterEventTopic",
    "ds:DisableLDAPS",
    "ds:DisableRadius",
    "ds:DisableSso",
    "ds:UnshareDirectory"
  ],
  "Resource": "*",
  "Effect": "Deny"
}
```

## SCP-AMS-026：防止使用列入拒絕清單的服務
<a name="scp-prevent-denylisted-service"></a>

防止使用拒絕清單的服務。

**注意**  
將 *service1* 和 *service2* 取代為您的服務名稱。*Access-analyzer* 或 *IAM* 範例。

```
{
  "Effect": "Deny",
  "Resource": "*",
  "Action": ["service1:*", "service2:*"]
}
```

## SCP-AMS-027：防止在特定區域中使用列入拒絕清單的服務
<a name="scp-prevent-denylisted-service-specifc-regions"></a>

防止在特定 AWS 區域中使用列入拒絕清單的服務。

**注意**  
將 *service1* 和 *service2* 取代為您的服務名稱。*Access-analyzer* 或 *IAM* 範例。  
將 *region1* 和 *region2* 取代為您的服務名稱。範例 *us-west-2* 或 *use-east-1*。

```
{
  "Effect": "Deny",
  "Resource": "*",
  "Action": ["service1:*", "service2:*"],
  "Condition": {
    "StringEquals": {
      "aws:RequestedRegion": [
        "region1",
        "region2"
      ]
    }
  }
}
```

## SCP-AMS-028：防止修改標籤，授權委託人除外
<a name="scp-prevent-tag-modifications"></a>

防止授權委託人以外的任何使用者修改標籤。使用授權標籤來授權委託人。授權標籤必須與資源和主體建立關聯。只有在資源和委託人上的標籤都相符時，使用者/角色才會被視為已授權。如需詳細資訊，請參閱下列資源：
+ [使用 中的服務控制政策保護用於授權的資源標籤 AWS Organizations](https://aws.amazon.com/blogs/security/securing-resource-tags-used-for-authorization-using-service-control-policy-in-aws-organizations/)
+ [防止修改標籤，但授權委託人除外](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps_examples_tagging.html#example-require-restrict-tag-mods-to-admin)

```
{
  "Effect": "Deny",
  "Action": [
    "ec2:CreateTags",
    "ec2:DeleteTags"
  ],
  "Resource": [
    "*"
  ],
  "Condition": {
    "StringNotEquals": {
      "ec2:ResourceTag/access-project": "${aws:PrincipalTag/access-project}",
      "aws:PrincipalArn": "arn:aws:iam::{ACCOUNT_ID}:{RESOURCE_TYPE}/{RESOURCE_NAME}"
    },
    "Null": {
      "ec2:ResourceTag/access-project": false
    }
  }
},
{
  "Effect": "Deny",
  "Action": [
    "ec2:CreateTags",
    "ec2:DeleteTags"
  ],
  "Resource": [
    "*"
  ],
  "Condition": {
    "StringNotEquals": {
      "aws:RequestTag/access-project": "${aws:PrincipalTag/access-project}",
      "aws:PrincipalArn": "arn:aws:iam::{ACCOUNT_ID}:{RESOURCE_TYPE}/{RESOURCE_NAME}"
    },
    "ForAnyValue:StringEquals": {
      "aws:TagKeys": [
        "access-project"
      ]   
    }   
  }
},
{       
  "Effect": "Deny", 
  "Action": [
    "ec2:CreateTags",
    "ec2:DeleteTags"
  ],      
  "Resource": [
    "*"     
  ],      
  "Condition": {
    "StringNotEquals": {
      "aws:PrincipalArn": "arn:aws:iam::{ACCOUNT_ID}:{RESOURCE_TYPE}/{RESOURCE_NAME}"
    },      
    "Null": {
      "aws:PrincipalTag/access-project": true
    }       
  }       
}
```

## SCP-AMS-029：防止使用者刪除 Amazon VPC 流程日誌
<a name="scp-prevent-vpc-flow-log-deletion"></a>

防止刪除 Amazon VPC 流程日誌。

```
{
  "Action": [
    "ec2:DeleteFlowLogs",
    "logs:DeleteLogGroup",
    "logs:DeleteLogStream",
    "s3:DeleteBucket",
    "s3:DeleteObject",
    "s3:DeleteObjectVersion",
    "s3:PutLifecycleConfiguration",
    "firehose:DeleteDeliveryStream"
  ],
  "Resource": "*",
  "Effect": "Deny"
}
```

## SCP-AMS-030：防止與網路帳戶以外的帳戶共用 VPC 子網路
<a name="scp-prevent-sharing-vpc-subnet"></a>

防止與網路帳戶以外的帳戶共用 Amazon VPC 子網路。

**注意**  
將 *NETWORK\$1ACCOUNT\$1ID* 取代為您的網路帳戶 ID。

```
{
  "Effect": "Deny",
  "Action": [
    "ram:AssociateResourceShare",
    "ram:CreateResourceShare"
  ],
  "Resource": "*",
  "Condition": {
    "StringNotEquals": {
      "ram:Principal": "NETWORK_ACCOUNT_ID"
    },
    "StringEquals": {
      "ram:RequestedResourceType": "ec2:Subnet"
    }
  }
}
```

## SCP-AMS-031：防止使用禁止的執行個體類型啟動執行個體
<a name="scp-prevent-launching-prohibited-instances"></a>

防止延遲禁止的 Amazon EC2 執行個體類型。

**注意**  
將 *instance\$1type1* 和 *instance\$1type2* 取代為您想要限制的執行個體類型，例如 *t2.micro* 或萬用字元字串，例如 *\$1.nano。*

```
{
  "Effect": "Deny",
  "Action": "ec2:RunInstances",
  "Resource": [
    "arn:aws:ec2:*:*:instance/*"
  ],
  "Condition": {
    "ForAnyValue:StringLike": {
      "ec2:InstanceType": [
        "instance_type1", 
        "instance_type2"
      ]
    }
  }
}
```

## SCP-AMS-032：防止在沒有 IMDSv2 的情況下啟動執行個體
<a name="scp-prevent-launching-instances-without-imdsv2"></a>

防止沒有 IMDSv2 的 Amazon EC2 執行個體。 IMDSv2

```
[
  {
    "Effect": "Deny",
    "Action": "ec2:RunInstances",
    "Resource": "arn:aws:ec2:*:*:instance/*",
    "Condition": {
      "StringNotEquals": {
        "ec2:MetadataHttpTokens": "required"
      }
    }
  },
  {
    "Effect": "Deny",
    "Action": "ec2:RunInstances",
    "Resource": "arn:aws:ec2:*:*:instance/*",
    "Condition": {
      "NumericGreaterThan": {
        "ec2:MetadataHttpPutResponseHopLimit": "3"
      }
    }
  },
  {
    "Effect": "Deny",
    "Action": "*",
    "Resource": "*",
    "Condition": {
      "NumericLessThan": {
        "ec2:RoleDelivery": "2.0"
      }
    }
  },
  {
    "Effect": "Deny",
    "Action": "ec2:ModifyInstanceMetadataOptions",
    "Resource": "*"
  }
]
```

## SCP-AMS-033：防止修改特定 IAM 角色
<a name="scp-prevent-modifications-to-iam-roles"></a>

防止修改指定的 IAM 角色。

```
{
  "Action": [
    "iam:AttachRolePolicy",
    "iam:DeleteRole",
    "iam:DeleteRolePermissionsBoundary",
    "iam:DeleteRolePolicy",
    "iam:DetachRolePolicy",
    "iam:PutRolePermissionsBoundary",
    "iam:PutRolePolicy",
    "iam:TagRole",
    "iam:UntagRole",
    "iam:UpdateAssumeRolePolicy",
    "iam:UpdateRole",
    "iam:UpdateRoleDescription"
  ],
  "Resource": [
     "arn:aws:iam::{ACCOUNT_ID}:role/{RESOURCE_NAME}"
  ],
  "Effect": "Deny"
}
```

## SCP-AMS-034：防止在特定 IAM 角色上修改 AssumeRolePolicy
<a name="scp-prevent-assumerolepolicy-modifications"></a>

防止修改指定 IAM 角色的 AssumeRolePolicy。

```
{
  "Action": [
    "iam:UpdateAssumeRolePolicy"
  ],
  "Resource": [
     "arn:aws:iam::{ACCOUNT_ID}:role/{RESOURCE_NAME}"
  ],
  "Effect": "Deny"
}
```

## ConfigRule：必要標籤
<a name="cnfgrl-required-tags"></a>

檢查 EC2 執行個體是否有您需要的自訂標籤。除了 InfoSec 之外，這也適用於您的成本管理

```
ConfigRuleName: required-tags
      Description: >-
        A Config rule that checks whether EC2 instances have the required tags.
      Scope:
        ComplianceResourceTypes:
          - 'AWS::EC2::Instance'
      InputParameters:
        tag1Key: COST_CENTER
        tag2Key: APP_ID
      Source:
        Owner: AWS
        SourceIdentifier: REQUIRED_TAGS
```

## ConfigRule：已輪換存取金鑰
<a name="cnfgrl-access-key-rotate"></a>

檢查存取金鑰是否在指定的期間內輪換。根據典型的合規要求，這通常設定為 90 天。

```
ConfigRuleName: access-keys-rotated
      Description: >-
        A config rule that checks whether the active access keys are rotated
        within the number of days specified in maxAccessKeyAge. The rule is
        NON_COMPLIANT if the access keys have not been rotated for more than
        maxAccessKeyAge number of days.
      InputParameters:
        maxAccessKeyAge: '90'
      Source:
        Owner: AWS
        SourceIdentifier: ACCESS_KEYS_ROTATED
      MaximumExecutionFrequency: TwentyFour_Hours
```

## ConfigRule：AMS 中的 IAM 根存取金鑰
<a name="cnfgrl-iam-root-rotate"></a>

檢查 帳戶中沒有根存取金鑰。對於 AMS Advanced 帳戶，預期這是out-of-the-box可用的合規。

```
ConfigRuleName: iam-root-access-key-check
      Description: >-
        A config rule that checks whether the root user access key is available. The rule is COMPLIANT if the user access key does not exist.
      Source:
        Owner: AWS
        SourceIdentifier: IAM_ROOT_ACCESS_KEY_CHECK
      MaximumExecutionFrequency: TwentyFour_Hours
```

## ConfigRule：SSM 受管 EC2
<a name="cnfgrl-ssm-managed"></a>

檢查您的 EC2s是否由 SSM Systems Manager 管理。

```
ConfigRuleName: ec2-instance-managed-by-systems-manager
      Description: >-
        A Config rule that checks whether the EC2 instances in the
        account are managed by AWS Systems Manager.
      Scope:
        ComplianceResourceTypes:
          - 'AWS::EC2::Instance'
          - 'AWS::SSM::ManagedInstanceInventory'
      Source:
        Owner: AWS
        SourceIdentifier: EC2_INSTANCE_MANAGED_BY_SSM
```

## ConfigRule：AMS 中未使用的 IAM 使用者
<a name="cnfgrl-unused-user"></a>

檢查是否有指定期間內未使用的 IAM 使用者登入資料。如同金鑰輪換檢查，這通常會根據一般合規要求預設為 90 天。

```
ConfigRuleName: iam-user-unused-credentials-check
      Description: >-
        A config rule that checks whether IAM users have passwords
        or active access keys that have not been used within the
        specified number of days provided.
      InputParameters:
        maxCredentialUsageAge: '90'
      Source:
        Owner: AWS
SourceIdentifier: IAM_USER_UNUSED_CREDENTIALS_CHECK
      MaximumExecutionFrequency: TwentyFour_Hours
```

## ConfigRule：S3 儲存貯體記錄
<a name="cnfgrl-s3-logging"></a>

檢查帳戶中的 S3 儲存貯體是否已啟用記錄。

```
ConfigRuleName: s3-bucket-logging-enabled
      Description: >-
        A Config rule that checks whether logging is enabled for S3 buckets.
      Scope:
        ComplianceResourceTypes:
          - 'AWS::S3::Bucket'
      Source:
        Owner: AWS
SourceIdentifier: S3_BUCKET_LOGGING_ENABLED
```

## ConfigRule：S3 儲存貯體版本控制
<a name="cnfgrl-s3-versioning"></a>

檢查是否已啟用所有 S3 儲存貯體的版本控制和 MFA-delete （選用）

```
ConfigRuleName: s3-bucket-versioning-enabled
      Description: >-
        A Config rule that checks whether versioning is enabled for S3
        buckets. Optionally, the rule checks if MFA delete is enabled for S3 buckets.
      Scope:
        ComplianceResourceTypes:
          - 'AWS::S3::Bucket'
      Source:
        Owner: AWS
SourceIdentifier: S3_BUCKET_VERSIONING_ENABLED
```

## ConfigRule：S3 公有存取
<a name="cnfgrl-s3-public-access"></a>

檢查公有存取設定 （公有 ACL、公有政策、公有儲存貯體） 是否在帳戶間受到限制

```
ConfigRuleName: s3-account-level-public-access-blocks
      Description: >-
        A Config rule that checks whether the required public access block
        settings are configured from account level. The rule is only
        NON_COMPLIANT when the fields set below do not match the corresponding
        fields in the configuration item.
      Scope:
        ComplianceResourceTypes:
          - 'AWS::S3::AccountPublicAccessBlock'
      InputParameters:
        IgnorePublicAcls: 'True'
        BlockPublicPolicy: 'True'
        BlockPublicAcls: 'True'
        RestrictPublicBuckets: 'True'
      Source:
        Owner: AWS
SourceIdentifier: S3_ACCOUNT_LEVEL_PUBLIC_ACCESS_BLOCKS
```

## ConfigRule：非封存的 GuardDuty 調查結果
<a name="cnfgrl-gd-findings"></a>

檢查是否有任何非封存的 GuardDuty 調查結果早於指定的持續時間。預設持續時間為低 sev 30 天，中 sev 7 天，高 sev 問題清單 1 天。

```
ConfigRuleName: guardduty-non-archived-findings
      Description: >-
        A Config rule that checks whether the Amazon GuardDuty has findings that
        are non archived. The rule is NON_COMPLIANT if GuardDuty has non
        archived low/medium/high severity findings older than the specified number.
      InputParameters:
        daysLowSev: '30'
        daysMediumSev: '7'
        daysHighSev: '1'
      Source:
        Owner: AWS
        SourceIdentifier: GUARDDUTY_NON_ARCHIVED_FINDINGS
      MaximumExecutionFrequency: TwentyFour_Hours
```

## ConfigRule：CMK 刪除
<a name="cnfgrl-cmk-deletion"></a>

檢查是否有任何已排程 （也稱為待定） 要刪除的 AWS Key Management Service 自訂主金鑰 (CMKs)。這一點至關重要，因為 CMK 刪除的不知道可能會導致資料無法復原

```
ConfigRuleName: kms-cmk-not-scheduled-for-deletion
      Description: >-
        A config rule that checks whether customer master keys (CMKs) are not
        scheduled for deletion in AWS Key Management Service (AWS KMS). The rule is
        NON_COMPLIANT if CMKs are scheduled for deletion.
      Source:
        Owner: AWS
SourceIdentifier: KMS_CMK_NOT_SCHEDULED_FOR_DELETION
      MaximumExecutionFrequency: TwentyFour_Hours
```

## ConfigRule：CMK 輪換
<a name="cnfgrl-cmk-rotation"></a>

檢查帳戶中的每個 CMK 是否已啟用自動輪換

```
ConfigRuleName: cmk-backing-key-rotation-enabled
      Description: >-
        A config rule that checks that key rotation is enabled for each customer
        master key (CMK). The rule is COMPLIANT, if the key rotation is enabled
        for specific key object. The rule is not applicable to CMKs that have
        imported key material.
      Source:
        Owner: AWS
SourceIdentifier: CMK_BACKING_KEY_ROTATION_ENABLED
      MaximumExecutionFrequency: TwentyFour_Hours
```

# Config 規則的自訂通知
<a name="scp-lib-custom-notice"></a>

可能會發生重大不合規的 Config 規則，需要直接向您的 InfoSec 和領導團隊提高提升意識。針對這類案例，AMS 建議您設定不合規事件驅動的自訂通知。

例如：

```
ConfigRuleName: required-tags
      Description: >-
        A Config rule that checks whether EC2 instances have the mandated tags.
      Scope:
        ComplianceResourceTypes:
          - 'AWS::EC2::Instance'
      InputParameters:
        tag1Key: COST_CENTER
        tag2Key: APP_ID
      Source:
        Owner: AWS
SourceIdentifier: REQUIRED_TAGS
  NotificationEventRule:
    Type: 'AWS::Events::Rule'
    Properties:
      Name: CWEventForrequired-tags
      Description: >-
        SNS Notification for Non-Compliant Events of Config Rule:
        required-tags
      State: ENABLED
      EventPattern:
        detail-type:
          - Config Rules Compliance Change
        source:
          - aws.config
        detail:
          newEvaluationResult:
            complianceType:
              - NON_COMPLIANT
          configRuleARN:
            - 'Fn::GetAtt':
                - RequiredEC2Tags
                - Arn
      Targets:
        - Id: RemediationNotification
          Arn:
            Ref: SnsTopic
          InputTransformer:
            InputTemplate: >-
              "EC2 Instance <Instance_ID> is non-compliant. Please add required tags: COST_CENTER, APP_ID, Name, and Backup."
            InputPathsMap:
              instance_id: $.detail.resourceId
  SnsTopic:
    Type: 'AWS::SNS::Topic'
    Properties:
      Subscription:
        - Endpoint: Cloud_Ops_Leaders@customer.com
          Protocol: email
      TopicName: noncompliant-instance-notification
  SnsTopicPolicy:
    Type: 'AWS::SNS::TopicPolicy'
    Properties:
      PolicyDocument:
        Statement:
          - Sid: __default_statement_ID
            Effect: Allow
            Principal:
              AWS: '*'
            Action:
              - 'SNS:GetTopicAttributes'
              - 'SNS:SetTopicAttributes'
              - 'SNS:AddPermission'
              - 'SNS:RemovePermission'
              - 'SNS:DeleteTopic'
              - 'SNS:Subscribe'
              - 'SNS:ListSubscriptionsByTopic'
              - 'SNS:Publish'
              - 'SNS:Receive'
            Resource:
              Ref: SnsTopic
            Condition:
              StringEquals:
                'AWS:SourceOwner':
                  Ref: 'AWS::AccountId'
          - Sid: TrustCWEToPublishEventsToMyTopic
            Effect: Allow
            Principal:
              Service: events.amazonaws.com
            Action: 'sns:Publish'
            Resource:
              Ref: SnsTopic
      Topics:
        - Ref: SnsTopic
```

# AMS Advanced 的 Amazon EventBridge 規則服務連結角色
<a name="slr-evb-rule-advanced"></a>

AMS Advanced 使用名為 **AWSServiceRoleForManagedServices\$1Events** 的服務連結角色 (SLR) – 此角色信任其中一個 AWS Managed Services 服務主體 (events.managedservices.amazonaws.com：//) 為您擔任該角色。服務會使用 角色來建立 EventBridge 受管規則。此規則是您 AWS 帳戶中將警示狀態變更資訊從您的帳戶交付至 AWS Managed Services 所需的基礎設施。

## AMS Advanced 的 EventBridge SLR 許可
<a name="slr-permissions-create-evb-rule"></a>

**AWSServiceRoleForManagedServices\$1Events** 服務連結角色信任下列服務擔任該角色：
+ events.managedservices.amazonaws.com

連接至此角色是 **AWSManagedServices\$1EventsServiceRolePolicy** AWS 受管政策 （請參閱 [AWS 受管政策：AWSManagedServices\$1EventsServiceRolePolicy](https://docs.aws.amazon.com/managedservices/latest/accelerate-guide/security-iam-awsmanpol.html#EventsServiceRolePolicy))。服務會使用 角色，將警示狀態變更資訊從您的帳戶傳遞至 AWS Managed Services。您必須設定許可，IAM 實體 (如使用者、群組或角色) 才可建立、編輯或刪除服務連結角色。如需詳細資訊，請參閱《*AWS Identity and Access Management* 使用者指南》中的[服務連結角色許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)。

您可以在此 ZIP： EventsServiceRolePolicy.zip 中下載 JSON **AWSManagedServices\$1EventsServiceRolePolicy**。 [EventsServiceRolePolicy.zip](https://docs.aws.amazon.com/managedservices/latest/accelerate-guide/samples/EventsServiceRolePolicy.zip)

## 建立 AMS Advanced 的 EventBridge SLR
<a name="slr-evb-rule-create"></a>

您不需要手動建立一個服務連結角色。當您在 AWS 管理主控台 AWS CLI、 或 AWS API 中加入 AMS 時，AMS Advanced 會為您建立服務連結角色。

**重要**  
如果您在 2023 年 2 月 7 日之前使用 AMS Advanced 服務，此服務連結角色會出現在您的帳戶中，當它開始支援服務連結角色時，AMS Accelerate 會在您的帳戶中建立 AWSServiceRoleForManagedServices\$1Events 角色。若要進一步了解，請參閱[我的 IAM 帳戶中出現的新角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared)。

若您刪除此服務連結角色，之後需要再次建立，您可以在帳戶中使用相同程序重新建立角色。當您加入 AMS 時，AMS Advanced 會再次為您建立服務連結角色。

## 編輯 AMS Advanced 的 EventBridge SLR
<a name="slr-evb-rule-edit"></a>

AMS Advanced 不允許您編輯 AWSServiceRoleForManagedServices\$1Events 服務連結角色。因為有各種實體可能會參考服務連結角色，所以您無法在建立角色之後變更角色名稱。然而，您可使用 IAM 來編輯角色描述。如需詳細資訊，請參閱[「IAM 使用者指南」](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)的*編輯服務連結角色*。

## 刪除 AMS Advanced 的 EventBridge SLR
<a name="slr-evb-rule-delete"></a>

您不需要手動刪除 AWSServiceRoleForManagedServices\$1Events 角色。當您在 AWS 管理主控台、 AWS CLI 或 AWS API 中從 AMS 離職時，AMS Advanced 會為您清除資源並刪除服務連結角色。

您也可以使用 IAM 主控台、 AWS CLI 或 AWS API 手動刪除服務連結角色。若要執行此操作，您必須先手動清除服務連結角色的資源，然後才能手動刪除它。

**注意**  
如果您嘗試刪除資源時，AMS Advanced 服務正在使用該角色，則刪除可能會失敗。若此情況發生，請等待數分鐘後並再次嘗試操作。

**刪除 ** AWSServiceRoleForManagedServices\$1Events 服務連結角色所使用的 AMS Advanced** 資源**

**使用 IAM 手動刪除服務連結角色**

使用 IAM 主控台 AWS CLI、 或 AWS API 來刪除 AWSServiceRoleForManagedServices\$1Events 服務連結角色。

如需詳細資訊，請參閱《IAM 使用者指南》**中的[刪除服務連結角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)。

# 安全最佳實務
<a name="sec-best-practice"></a>

本節已修訂，因為它包含敏感的 AMS 安全相關資訊。此資訊可透過 AMS 主控台**文件**取得。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。

## AMS 多帳戶登陸區域 EPS 非預設設定
<a name="malz-eps-settings"></a>

本節已修訂，因為它包含敏感的 AMS 安全相關資訊。此資訊可透過 AMS 主控台**文件**取得。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。

## AMS 護欄
<a name="detective-rules"></a>

護欄是為整體 AMS 環境提供持續控管的高階規則。

本節已修訂，因為它包含敏感的 AMS 安全相關資訊。此資訊可透過 AMS 主控台**文件**取得。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。

## MALZ Service 控制政策
<a name="malz-scp"></a>

本節已修訂，因為它包含敏感的 AMS 安全相關資訊。此資訊可透過 AMS 主控台**文件**取得。若要存取 AWS Artifact，您可以聯絡 CSDM 以取得指示，或前往 [AWS Artifact 入門](https://aws.amazon.com/artifact/getting-started)。