

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

# AWS IoT SiteWise 身分型政策
<a name="security_iam_service-with-iam-id-based-policies"></a>

IAM 政策可讓您控制誰可以在其中執行動作 AWS IoT SiteWise。您可以決定是否允許哪些動作，並為這些動作設定特定條件。例如，您可以制定有關誰可以在 中查看或變更資訊的規則 AWS IoT SiteWise。 AWS IoT SiteWise 支援特定動作、資源和條件索引鍵。若要了解您在 JSON 政策中使用的所有元素，請參閱《*IAM 使用者指南*》中的 [IAM JSON 政策元素參考](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)。

## 政策動作
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

管理員可以使用 AWS JSON 政策來指定誰可以存取內容。也就是說，哪個**主體**在什麼**條件**下可以對什麼**資源**執行哪些**動作**。

JSON 政策的 `Action` 元素描述您可以用來允許或拒絕政策中存取的動作。政策會使用動作來授予執行相關聯動作的許可。

中的政策動作在動作之前 AWS IoT SiteWise 使用下列字首：`iotsitewise:`。例如，若要授予某人使用 `BatchPutAssetPropertyValue` API AWS IoT SiteWise 操作將資產屬性資料上傳至 的許可，請在其政策中包含 `iotsitewise:BatchPutAssetPropertyValue`動作。政策陳述式必須包含 `Action`或 `NotAction`元素。 AWS IoT SiteWise 會定義自己的一組動作，描述您可以使用此服務執行的任務。

若要在單一陳述式中指定多個  動作，請用逗號分隔，如下所示。

```
"Action": [
  "iotsitewise:action1",
  "iotsitewise:action2"
]
```

您也可以使用萬用字元 (\$1) 來指定多個動作。例如，如需指定開頭是 `Describe` 文字的所有動作，請包含以下動作：

```
"Action": "iotsitewise:Describe*"
```



若要查看 AWS IoT SiteWise 動作清單，請參閱《*IAM 使用者指南*》中的 [定義的動作 AWS IoT SiteWise](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotsitewise.html#awsiotsitewise-actions-as-permissions)。

### BatchPutAssetPropertyValue 授權
<a name="security_iam_service-with-iam-id-based-policies-batchputassetpropertyvalue-action"></a>

AWS IoT SiteWise 以不尋常的方式授權存取 [BatchPutAssetPropertyValue](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_BatchPutAssetPropertyValue.html) 動作。對於大多數動作，當您允許或拒絕存取時，如果未授予許可，該動作會傳回錯誤。使用 `BatchPutAssetPropertyValue`，您可以將多個資料項目傳送至單一 API 請求中的不同資產和資產屬性。 AWS IoT SiteWise 會獨立授權每個資料項目。對於請求中授權失敗的任何個別項目， `AccessDeniedException`會在傳回的錯誤清單中 AWS IoT SiteWise 包含 。 會 AWS IoT SiteWise 接收授權和成功之任何項目的資料，即使相同請求中的另一個項目失敗。

**重要**  
在將資料擷取至資料串流之前，請執行下列動作：  
如果您使用屬性別名來識別資料串流，請授權`time-series`資源。
如果您使用資產 ID 來識別包含相關聯資產屬性的資產，請授權`asset`資源。

## 政策資源
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

管理員可以使用 AWS JSON 政策來指定誰可以存取內容。也就是說，哪個**主體**在什麼**條件**下可以對什麼**資源**執行哪些**動作**。

`Resource` JSON 政策元素可指定要套用動作的物件。最佳實務是使用其 [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) 來指定資源。若動作不支援資源層級許可，使用萬用字元 (\$1) 表示該陳述式適用於所有資源。

```
"Resource": "*"
```



每個 IAM 政策陳述式都會套用到您使用其 ARN 指定的資源。ARN 一般的語法如下所示。

```
arn:${Partition}:${Service}:${Region}:${Account}:${ResourceType}/${ResourcePath}
```

如需 ARNs 格式的詳細資訊，請參閱[使用 Amazon Resource Name (ARNs) 識別 AWS 資源](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)。

例如，若要在陳述式中指定 ID 為 `a1b2c3d4-5678-90ab-cdef-22222EXAMPLE` 的資產，請使用下列 ARN。

```
"Resource": "arn:aws:iotsitewise:region:123456789012:asset/a1b2c3d4-5678-90ab-cdef-22222EXAMPLE"
```

若要指定屬於特定帳戶的所有資料串流，請使用萬用字元 (\$1)：

```
"Resource": "arn:aws:iotsitewise:region:123456789012:time-series/*"
```

若要指定屬於特定帳戶的所有資產，請使用萬用字元 (\$1)：

```
"Resource": "arn:aws:iotsitewise:region:123456789012:asset/*"
```

有些 AWS IoT SiteWise 動作無法在特定資源上執行，例如用於建立資源的動作。在這些情況下，您必須使用萬用字元 (\$1)。

```
"Resource": "*"
```

若要在單一陳述式中指定多項資源，請使用逗號分隔 ARN。

```
"Resource": [
  "resource1",
  "resource2"
]
```

若要查看 AWS IoT SiteWise 資源類型及其 ARNs的清單，請參閱《*IAM 使用者指南*》中的 [定義的資源類型 AWS IoT SiteWise](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotsitewise.html#awsiotsitewise-resources-for-iam-policies)。若要了解您可以使用哪些動作指定每個資源的 ARN，請參閱 [AWS IoT SiteWise定義的動作](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotsitewise.html#awsiotsitewise-actions-as-permissions)。

## 政策條件索引鍵
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

管理員可以使用 AWS JSON 政策來指定誰可以存取內容。也就是說，哪個**主體**在什麼**條件**下可以對什麼**資源**執行哪些**動作**。

`Condition` 元素會根據定義的條件，指定陳述式的執行時機。您可以建立使用[條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)的條件運算式 (例如等於或小於)，來比對政策中的條件和請求中的值。若要查看所有 AWS 全域條件索引鍵，請參閱《*IAM 使用者指南*》中的[AWS 全域條件內容索引鍵](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)。

**重要**  
許多條件鍵均為資源專屬，而且部分 API 動作使用多個資源。若您撰寫的政策陳述式具備條件鍵，請使用陳述式的 `Resource` 元素來指定套用該條件鍵的資源。如果您未這麼做，該政策可能會導致使用者完全無法執行該動作，因為未套用條件鍵之資源的條件檢查會失敗。若您不希望指定資源，或者若已撰寫政策的 `Action` 元素來納入多個 API 動作，則您必須使用 `...IfExists` 條件類型，以確保未使用該條件鍵的資源，忽略該條件鍵。如需詳細資訊，請參閱 [...IAM 使用者指南中的 IfExists 條件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Conditions_IfExists)。 **

AWS IoT SiteWise 會定義自己的一組條件金鑰，也支援使用一些全域條件金鑰。若要查看所有 AWS 全域條件索引鍵，請參閱《*IAM 使用者指南*》中的[AWS 全域條件內容索引鍵](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)。


**AWS IoT SiteWise 條件索引鍵**  

| 條件金鑰 | Description | 類型 | 
| --- | --- | --- | 
| iotsitewise:isAssociatedWithAssetProperty |  資料串流是否與資產屬性相關聯。使用此條件索引鍵，根據資料串流的相關聯資產屬性是否存在來定義許可。 範例值：`true`  | String | 
| iotsitewise:assetHierarchyPath |  資產的階層路徑，也就是資產 ID 的字串，每個都以正斜線分隔。使用此條件鍵可根據帳戶中所有資產階層的子集來定義許可。 範例值：`/a1b2c3d4-5678-90ab-cdef-22222EXAMPLE/a1b2c3d4-5678-90ab-cdef-66666EXAMPLE`  | String | 
| iotsitewise:propertyId |  資產屬性的 ID。使用此條件鍵可根據資產模型的指定屬性來定義許可。此條件鍵適用於該模型的所有資產。 範例值：`a1b2c3d4-5678-90ab-cdef-33333EXAMPLE`  | String | 
| iotsitewise:childAssetId |  資產的 ID，此資產是其他資產相關聯的子系。使用此條件鍵可根據子資產定義許可。若要根據父資產來定義許可，請使用政策陳述式的資源區段。 範例值：`a1b2c3d4-5678-90ab-cdef-66666EXAMPLE`  | String | 
| iotsitewise:iam |  列出存取政策時的 IAM 身分 ARN。使用此條件金鑰來定義 IAM 身分的存取政策許可。 範例值：`arn:aws:iam::123456789012:user/JohnDoe`  | 字串、Null | 
| iotsitewise:propertyAlias |  識別資產屬性或資料串流的別名。使用此條件索引鍵根據別名定義許可。  | String | 
| iotsitewise:user |  列出存取政策時 IAM Identity Center 使用者的 ID。使用此條件金鑰來定義 IAM Identity Center 使用者的存取政策許可。 範例值：`a1b2c3d4e5-a1b2c3d4-5678-90ab-cdef-aaaaaEXAMPLE`  | 字串、Null | 
| iotsitewise:group |  列出存取政策時的 IAM Identity Center 群組 ID。使用此條件金鑰來定義 IAM Identity Center 群組的存取政策許可。 範例值：`a1b2c3d4e5-a1b2c3d4-5678-90ab-cdef-bbbbbEXAMPLE`  | 字串、Null | 
| iotsitewise:portal |  存取政策中入口網站的 ID。使用此條件鍵，根據入口網站定義存取政策許可。 範例值：`a1b2c3d4-5678-90ab-cdef-77777EXAMPLE`  | 字串、Null | 
| iotsitewise:project |  存取政策中專案的 ID，或儀表板的專案 ID。使用此條件鍵，根據專案定義儀表板或存取政策許可。 範例值：`a1b2c3d4-5678-90ab-cdef-88888EXAMPLE`  | 字串、Null | 



若要了解您可以使用條件索引鍵的動作和資源，請參閱 [定義的動作 AWS IoT SiteWise](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotsitewise.html#awsiotsitewise-actions-as-permissions)。

## 範例
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



若要檢視 AWS IoT SiteWise 身分型政策的範例，請參閱 [AWS IoT SiteWise 身分型政策範例](security_iam_id-based-policy-examples.md)。