

要获得与亚马逊 Timestream 类似的功能 LiveAnalytics，可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间，以实现实时分析。点击[此处](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html)了解更多信息。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 亚马逊 Timestream 版如何与 IAM 配 LiveAnalytics 合使用
<a name="security_iam_service-with-iam"></a>

在使用 IAM 管理对 Timestream 的访问权限之前 LiveAnalytics，您应该了解 Timestream 有哪些可用的 IAM 功能。 LiveAnalytics要全面了解 Timestream LiveAnalytics 和其他 AWS 服务如何与 IAM 配合使用，请参阅 IAM *用户指南*中的[与 IAM 配合使用的AWS 服务](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)。

**Topics**
+ [

## LiveAnalytics 基于身份的策略的时间流
](#security_iam_service-with-iam-id-based-policies)
+ [

## 基于 LiveAnalytics 资源的策略的时间流
](#security_iam_service-with-iam-resource-based-policies)
+ [

## 基于时间流对标签进行 LiveAnalytics 授权
](#security_iam_service-with-iam-tags)
+ [

## LiveAnalytics IAM 角色的时间流
](#security_iam_service-with-iam-roles)

## LiveAnalytics 基于身份的策略的时间流
<a name="security_iam_service-with-iam-id-based-policies"></a>

通过使用 IAM 基于身份的策略，您可以指定允许或拒绝的操作和资源以及允许或拒绝操作的条件。Timestream LiveAnalytics 支持特定的操作和资源以及条件键。要了解在 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` 元素描述可用于在策略中允许或拒绝访问的操作。在策略中包含操作以授予执行关联操作的权限。

 您可以在 IAM 策略语句的 Action 元素中指定以下操作。可以使用策略授予在 AWS中执行操作的权限。您在策略中使用一项操作时，通常使用相同的名称允许或拒绝对 API 操作、CLI 命令或 SQL 命令的访问。

 在某些情况下，单个动作即可控制对 API 操作和 SQL 命令的访问。还有某些操作需要多种不同的动作。

有关支持的 Timestream LiveAnalytics `Action` 的列表，请参阅下表：

**注意**  
对于所有特定于数据库的 `Actions`，您可以指定数据库 ARN，以限制对特定数据库的操作。


| 操作 | 描述 | 访问级别 | 资源类型（\$1 为必需） | 
| --- | --- | --- | --- | 
|  DescribeEndpoints  |  返回必须向其发送后续请求的 Timestream 端点。  |  全部  |  \$1  | 
|  Select  |  在 Timestream 上运行查询，从一个或多个表中选择数据。[请参阅此说明以获取详细说明](#security_iam_service-with-iam-id-based-policies-actions.select-vs-selectvalues)  |  读取  |  表\$1  | 
|  CancelQuery  |  取消查询。  |  读取  |  \$1  | 
|  ListTables  |  获取表列表。  |  列表  |  数据库\$1  | 
|  ListDatabases  |  获取数据库列表。  |  列表  |  \$1  | 
|  ListMeasures  |  获取度量列表。  |  读取  |  表\$1  | 
|  DescribeTable  |  获取表描述。  |  读取  |  表\$1  | 
|  DescribeDatabase  |  获取数据库描述。  |  读取  |  数据库\$1  | 
|  SelectValues  |  运行无需指定特定资源的查询。[请参阅此说明以获取详细说明](#security_iam_service-with-iam-id-based-policies-actions.select-vs-selectvalues)。  |  读取  |  \$1  | 
|  WriteRecords  |  将数据插入到 Timestrea 中。  |  写入  |  表\$1  | 
|  CreateTable  |  创建表。  |  写入  |  数据库\$1  | 
|  CreateDatabase  |  创建数据库。  |  写入  |  \$1  | 
|  DeleteDatabase  |  删除数据库。  |  写入  |  \$1  | 
|  UpdateDatabase  |  更新数据库。  |  写入  |  \$1  | 
|  DeleteTable  |  删除表。  |  写入  |  数据库\$1  | 
|  UpdateTable  |  更新表。  |  写入  |  数据库\$1  | 

#### SelectValues 与选择：
<a name="security_iam_service-with-iam-id-based-policies-actions.select-vs-selectvalues"></a>

`SelectValues` 是 用于查询的 `Action`，该查询*不*需要资源。不需要资源的查询示例如下所示：

```
SELECT 1
```

请注意，此查询并未引用特定的时间流来获取 LiveAnalytics 资源。再举一个例子：

```
SELECT now()
```

此查询使用`now()`函数返回当前时间戳，但不需要指定资源。 `SelectValues`通常用于测试，因此 Timestream for LiveAnalytics 可以在没有资源的情况下运行查询。现在，考虑 `Select` 查询：

```
SELECT * FROM database.table
```

这种类型的查询需要资源，特别是用于的 Timestream LiveAnalytics `table`，以便可以从表中获取指定的数据。

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

管理员可以使用 AWS JSON 策略来指定谁有权访问什么。也就是说，哪个**主体**可以对什么**资源**执行**操作**，以及在什么**条件**下执行。

`Resource` JSON 策略元素指定要向其应用操作的一个或多个对象。作为最佳实践，请使用其 [Amazon 资源名称（ARN）](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)指定资源。对于不支持资源级权限的操作，请使用通配符 (\$1) 指示语句应用于所有资源。

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

在 Timestream 中，可以在 IAM 权限的`Resource`元素中使用 LiveAnalytics 数据库和表。

 LiveAnalytics 数据库资源的时间流具有以下 ARN：

```
arn:${Partition}:timestream:${Region}:${Account}:database/${DatabaseName}
```

 LiveAnalytics 表格资源的时间流具有以下 ARN：

```
arn:${Partition}:timestream:${Region}:${Account}:database/${DatabaseName}/table/${TableName}
```

有关格式的更多信息 ARNs，请参阅 [Amazon 资源名称 (ARNs) 和 AWS 服务命名空间](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)。

例如，要在语句中指定 `database` 键空间，请使用以下 ARN：

```
"Resource": "arn:aws:timestream:us-east-1:123456789012:database/mydatabase"
```

要指定属于特定账户的所有数据库，请使用通配符（\$1）：

```
"Resource": "arn:aws:timestream:us-east-1:123456789012:database/*"
```

某些用于 LiveAnalytics 操作的时间流（例如创建资源的操作）无法在特定资源上执行。在这些情况下，您必须使用通配符（\$1)。

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

### 条件键
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Timestream for LiveAnalytics 不提供任何特定于服务的条件密钥，但它确实支持使用一些全局条件密钥。要查看所有 AWS 全局条件键，请参阅 *IAM 用户指南*中的[AWS 全局条件上下文密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)。

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

要查看 LiveAnalytics 基于身份的策略的 Timestream 示例，请参阅。[Amazon Timestream 查看 LiveAnalytics 基于身份的策略示例](security_iam_id-based-policy-examples.md)

## 基于 LiveAnalytics 资源的策略的时间流
<a name="security_iam_service-with-iam-resource-based-policies"></a>

的 Timestream LiveAnalytics 不支持基于资源的策略。要查看详细的基于资源的策略页面示例，请参阅 [https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html)。

## 基于时间流对标签进行 LiveAnalytics 授权
<a name="security_iam_service-with-iam-tags"></a>

您可以使用标签管理对您的 Timestream LiveAnalytics 资源的访问权限。要管理基于标签的资源访问，您可以使用 `timestream:ResourceTag/key-name`、`aws:RequestTag/key-name` 或 `aws:TagKeys` 条件键在策略的[条件元素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)中提供标签信息。有关为 LiveAnalytics 资源标记 Timestream 的更多信息，请参阅。[向资源添加标签和标注](tagging-keyspaces.md)

要查看基于身份的策略（用于根据资源上的标签来限制对该资源的访问）的示例，请参阅[基于标签的 LiveAnalytics 资源访问时间流](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-tags)。

## LiveAnalytics IAM 角色的时间流
<a name="security_iam_service-with-iam-roles"></a>

I [AM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)是您的 AWS 账户中具有特定权限的实体。

### 将临时凭证与 Timestream 配合使用 LiveAnalytics
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

可以使用临时凭证进行联合身份验证登录，分派 IAM 角色或分派跨账户角色。您可以通过调用[AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)或之类的 AWS STS API 操作来获取临时安全证书[GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html)。

### 服务关联角色
<a name="security_iam_service-with-iam-roles-service-linked"></a>

的 Timestream LiveAnalytics 不支持服务相关角色。

### 服务角色
<a name="security_iam_service-with-iam-roles-service"></a>

的时间流 LiveAnalytics 不支持服务角色。