

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

# 服務連結角色
<a name="vpc-eni-service-linked-role"></a>

AWS Device Farm 使用 AWS Identity and Access Management (IAM)[ 服務連結角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)。服務連結角色是直接連結至 Device Farm 的唯一 IAM 角色類型。服務連結角色是由 Device Farm 預先定義，並包含該服務代表您呼叫其他 AWS 服務所需的所有許可。

服務連結角色可讓您更輕鬆地設定 Device Farm，因為您不必手動新增必要的許可。Device Farm 定義其服務連結角色的許可，除非另有定義，否則只有 Device Farm 可以擔任其角色。定義的許可包括信任政策和許可政策，且該許可政策無法附加至其他 IAM 實體。

您必須先刪除服務連結角色的相關資源，才能將其刪除。這可保護您的 Device Farm 資源，因為您不會不小心移除存取資源的許可。

如需支援服務連結角色其他服務的資訊，請參閱[可搭配 IAM 運作的 AWS 服務](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)，並尋找 **Service-Linked Role** (服務連結角色) 欄顯示 **Yes** (是) 的服務。選擇具有連結的 **Yes** (是)，以檢視該服務的服務連結角色文件。

## Device Farm 的服務連結角色許可
<a name="slr-permissions"></a>

Device Farm 使用名為 **AWSServiceRoleForDeviceFarm** 的服務連結角色 – 允許 Device Farm 代表您存取 AWS 資源。

AWSServiceRoleForDeviceFarm 服務連結角色信任下列服務擔任該角色：
+ `devicefarm.amazonaws.com`

角色許可政策允許 Device Farm 完成下列動作：
+ 針對您的帳戶
  + 建立網路介面
  + 描述網路介面
  + 描述 VPCs
  + 描述子網路
  + 描述安全群組
  + 刪除界面
  + 修改網路介面
+ 對於網路介面
  + 建立標籤
+ 適用於 Device Farm 管理的 EC2 網路介面
  + 建立網路介面許可

完整的 IAM 政策會讀取：

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

****  

```
	{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Effect": "Allow",
			"Action": [
				"ec2:DescribeNetworkInterfaces",
				"ec2:DescribeVpcs",
				"ec2:DescribeSubnets",
				"ec2:DescribeSecurityGroups"
			],
			"Resource": "*"
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:CreateNetworkInterface"
			],
			"Resource": [
				"arn:aws:ec2:*:*:subnet/*",
				"arn:aws:ec2:*:*:security-group/*"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:CreateNetworkInterface"
			],
			"Resource": [
				"arn:aws:ec2:*:*:network-interface/*"
			],
			"Condition": {
				"StringEquals": {
					"aws:RequestTag/AWSDeviceFarmManaged": "true"
				}
			}
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:CreateTags"
			],
			"Resource": "arn:aws:ec2:*:*:network-interface/*",
			"Condition": {
				"StringEquals": {
					"ec2:CreateAction": "CreateNetworkInterface"
				}
			}
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:CreateNetworkInterfacePermission",
				"ec2:DeleteNetworkInterface"
			],
			"Resource": "arn:aws:ec2:*:*:network-interface/*",
			"Condition": {
				"StringEquals": {
					"aws:ResourceTag/AWSDeviceFarmManaged": "true"
				}
			}
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:ModifyNetworkInterfaceAttribute"
			],
			"Resource": [
				"arn:aws:ec2:*:*:security-group/*",
				"arn:aws:ec2:*:*:instance/*"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:ModifyNetworkInterfaceAttribute"
			],
			"Resource": "arn:aws:ec2:*:*:network-interface/*",
			"Condition": {
				"StringEquals": {
					"aws:ResourceTag/AWSDeviceFarmManaged": "true"
				}
			}
		}
	]
}
```

------

您必須設定許可，IAM 實體 (如使用者、群組或角色) 才可建立、編輯或刪除服務連結角色。如需詳細資訊，請參閱《*IAM 使用者指南*》中的[服務連結角色許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)。

## 為 Device Farm 建立服務連結角色
<a name="create-slr"></a>

當您為行動測試專案提供 VPC 組態時，您不需要手動建立服務連結角色。當您在 AWS 管理主控台、 AWS CLI或 AWS API 中建立第一個 Device Farm 資源時，Device Farm 會為您建立服務連結角色。

若您刪除此服務連結角色，之後需要再次建立，您可以在帳戶中使用相同程序重新建立角色。當您建立第一個 Device Farm 資源時，Device Farm 會再次為您建立服務連結角色。

您也可以使用 IAM 主控台，透過 **Device Farm** 使用案例建立服務連結角色。在 AWS CLI 或 AWS API 中，使用服務名稱建立`devicefarm.amazonaws.com`服務連結角色。如需詳細資訊，請參閱 *IAM 使用者指南*中的[建立服務連結角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role)。如果您刪除此服務連結角色，您可以使用此相同的程序以再次建立該角色。

## 編輯 Device Farm 的服務連結角色
<a name="edit-slr"></a>

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

## 刪除 Device Farm 的服務連結角色
<a name="delete-slr"></a>

若您不再使用需要服務連結角色的功能或服務，我們建議您刪除該角色。如此一來，您就沒有未主動監控或維護的未使用實體。然而，在手動刪除服務連結角色之前，您必須先清除資源。

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

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

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

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

Device Farm 支援在提供服務的所有區域中使用服務連結角色。如需詳細資訊，請參閱 [AWS 區域與端點](https://docs.aws.amazon.com/general/latest/gr/rande.html)。

Device Farm 不支援在提供服務的每個區域中使用服務連結角色。您可以在下列區域中使用 AWSServiceRoleForDeviceFarm 角色。


****  

| 區域名稱 | 區域身分 | Device Farm 中的支援 | 
| --- | --- | --- | 
| 美國東部 (維吉尼亞北部) | us-east-1 | 否 | 
| 美國東部 (俄亥俄) | us-east-2 | 否 | 
| 美國西部 (加利佛尼亞北部) | us-west-1 | 否 | 
| 美國西部 (奧勒岡) | us-west-2 | 是 | 
| 亞太區域 (孟買) | ap-south-1 | 否 | 
| 亞太地區 (大阪) | ap-northeast-3 | 否 | 
| 亞太區域 (首爾) | ap-northeast-2 | 否 | 
| 亞太區域 (新加坡) | ap-southeast-1 | 否 | 
| 亞太地區 (悉尼) | ap-southeast-2 | 否 | 
| 亞太區域 (東京) | ap-northeast-1 | 否 | 
| 加拿大 (中部) | ca-central-1 | 否 | 
| 歐洲 (法蘭克福) | eu-central-1 | 否 | 
| 歐洲 (愛爾蘭) | eu-west-1 | 否 | 
| 歐洲 (倫敦) | eu-west-2 | 否 | 
| Europe (Paris) | eu-west-3 | 否 | 
| 南美洲 (聖保羅) | sa-east-1 | 否 | 
| AWS GovCloud (US) | us-gov-west-1 | 否 | 