

 AWS Cloud9 不再提供給新客戶。 AWS Cloud9 的現有客戶可以繼續正常使用該服務。[進一步了解](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

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

# 使用 的服務連結角色 AWS Cloud9
<a name="using-service-linked-roles"></a>

AWS Cloud9 use AWS Identity and Access Management (IAM) [服務連結角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html)。服務連結角色是直接連結的唯一 IAM 角色類型 AWS Cloud9。服務連結角色由 AWS Cloud9 預先定義，且內含該服務代您呼叫其他 AWS 服務所需的所有許可。

服務連結角色可讓您更 AWS Cloud9 輕鬆地設定，因為您不必新增必要的許可。 AWS Cloud9 會定義其服務連結角色的許可，而且只能 AWS Cloud9 擔任其角色。定義的許可包括信任政策和許可政策，並且該許可政策不能附加到任何其他 IAM 實體。

您必須先刪除角色的相關資源，才能刪除角色。這可保護您的 AWS Cloud9 資源，因為您不會不小心移除存取資源的許可。

如需關於支援服務連結角色的其他服務的資訊，請參閱[可搭配 IAM 運作的AWS 服務](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)，並尋找 **Service-Linked Role** (服務連結角色) 欄顯示為 **Yes** (是) 的服務。選擇具有連結的**是**，以檢視該服務的服務連結角色文件。
+  [AWS Cloud9的服務連結角色許可](#service-linked-role-permissions) 
+  [為 建立服務連結角色 AWS Cloud9](#create-service-linked-role) 
+  [編輯 的服務連結角色 AWS Cloud9](#edit-service-linked-role) 
+  [刪除 的服務連結角色 AWS Cloud9](#delete-service-linked-role) 
+  [AWS Cloud9 服務連結角色支援的區域](#slr-regions) 

## 的服務連結角色許可 AWS Cloud9
<a name="service-linked-role-permissions"></a>

AWS Cloud9 使用名為 AWSServiceRoleForAWSCloud9 的服務連結角色。此服務連結角色信任 `cloud9.amazonaws.com` 服務擔任其角色。

此服務連結角色的許可政策名為 **AWSCloud9ServiceRolePolicy**，允許 AWS Cloud9 完成指定資源上政策中列出的動作。

**重要**  
 如果您正在使用 License Manager，並且收到 `unable to access your environment` 錯誤，則需要將舊的服務連結角色取代為支援 License Manager 的版本。您可以透過直接刪除來取代舊角色。然後，更新過的角色會自動建立。

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

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Effect": "Allow",
			"Action": [
				"ec2:RunInstances",
				"ec2:CreateSecurityGroup",
				"ec2:DescribeVpcs",
				"ec2:DescribeSubnets",
				"ec2:DescribeSecurityGroups",
				"ec2:DescribeInstances",
				"ec2:DescribeInstanceStatus",
				"cloudformation:CreateStack",
				"cloudformation:DescribeStacks",
				"cloudformation:DescribeStackEvents",
				"cloudformation:DescribeStackResources"
			],
			"Resource": "*"
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:TerminateInstances",
				"ec2:DeleteSecurityGroup",
				"ec2:AuthorizeSecurityGroupIngress"
			],
			"Resource": "*"
		},
		{
			"Effect": "Allow",
			"Action": [
				"cloudformation:DeleteStack"
			],
			"Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*"
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:CreateTags"
			],
			"Resource": [
				"arn:aws:ec2:*:*:instance/*",
				"arn:aws:ec2:*:*:security-group/*"
			],
			"Condition": {
				"StringLike": {
					"aws:RequestTag/Name": "aws-cloud9-*"
				}
			}
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:StartInstances",
				"ec2:StopInstances"
			],
			"Resource": "*",
			"Condition": {
				"StringLike": {
					"ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*"
				}
			}
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:StartInstances",
				"ec2:StopInstances"
			],
			"Resource": [
				"arn:aws:license-manager:*:*:license-configuration:*"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"iam:ListInstanceProfiles",
				"iam:GetInstanceProfile"
			],
			"Resource": [
				"arn:aws:iam::*:instance-profile/cloud9/*"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"iam:PassRole"
			],
			"Resource": [
				"arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"
			],
			"Condition": {
				"StringLike": {
					"iam:PassedToService": "ec2.amazonaws.com"
				}
			}
		}
	]
}
```

------

您必須設定許可，以允許 代表 IAM 實體 AWS Cloud9 建立服務連結角色 （例如使用者、群組或角色）。

若要允許 AWS Cloud9 建立 AWSServiceRoleForAWSCloud9 服務連結角色，請將下列陳述式新增至代表其 AWS Cloud9 需要建立服務連結角色的 IAM 實體的許可政策。

```
{
  "Effect": "Allow",
  "Action": [
    "iam:CreateServiceLinkedRole"
  ],
  "Resource": "*",
  "Condition": {
    "StringLike": {
      "iam:AWSServiceName": "cloud9.amazonaws.com"
    }
  }
}
```

或者，您也可為 IAM 實體新增 AWS 受管政策 `AWSCloud9User` 或 `AWSCloud9Administrator`。

若要允許 IAM 實體刪除 AWSServiceRoleForAWSCloud9 服務連結角色，請將以下陳述式加入至需要刪除服務連結角色的 IAM 實體許可政策。

```
{
  "Effect": "Allow",
  "Action": [
    "iam:DeleteServiceLinkedRole",
    "iam:GetServiceLinkedRoleDeletionStatus"
  ],
  "Resource": "*",
  "Condition": {
    "StringLike": {
      "iam:AWSServiceName": "cloud9.amazonaws.com"
    }
  }
}
```

## 為 建立服務連結角色 AWS Cloud9
<a name="create-service-linked-role"></a>

您不需要建立服務連結角色。當您建立 AWS Cloud9 開發環境時， 會為您 AWS Cloud9 建立服務連結角色。

## 編輯 的服務連結角色 AWS Cloud9
<a name="edit-service-linked-role"></a>

您無法編輯其中的 AWSServiceRoleForAWSCloud9 服務連結角色 AWS Cloud9。例如，您一旦建立了服務連結角色，即無法變更該角色的名稱，因為各種實體皆可能會參考該角色。然而，您可使用 IAM 來編輯角色描述。如需詳細資訊，請參閱《*IAM 使用者指南*》中的[編輯服務連結角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)。

## 刪除 的服務連結角色 AWS Cloud9
<a name="delete-service-linked-role"></a>

若您不再使用需要服務連結角色的功能或服務，我們建議您刪除該角色。如此一來，您就沒有未主動監控或維護的未使用實體。

### 在 IAM 中刪除服務連結角色
<a name="delete-service-linked-role-service-console"></a>

使用 IAM 刪除服務連結角色之前，您必須先移除該角色所使用的任何 AWS Cloud9 資源。若要移除 AWS Cloud9 資源，請參閱[刪除環境](delete-environment.md)。

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

## AWS Cloud9 服務連結角色支援的區域
<a name="slr-regions"></a>

AWS Cloud9 支援在提供服務的所有區域中使用服務連結角色。如需詳細資訊，請參閱 *Amazon Web Services 一般參考* 中的 [AWS Cloud9](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloud9_region)。