

Amazon Timestream for LiveAnalytics に類似した機能をご希望の場合は Amazon Timestream for InfluxDB をご検討ください。リアルタイム分析に適した、シンプルなデータインジェストと 1 桁ミリ秒のクエリ応答時間を特徴としています。詳細については、[こちら](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html)を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon Timestream for LiveAnalytics アイデンティティベースのポリシーの例
<a name="security_iam_id-based-policy-examples"></a>

デフォルトでは、IAM ユーザーおよびロールには、Timestream for LiveAnalytics リソースを作成または変更する権限はありません。また、、CQLSH AWS マネジメントコンソール、、 AWS CLIまたは AWS API を使用してタスクを実行することはできません。IAM 管理者は、ユーザーとロールに必要な、指定されたリソースで特定の API オペレーションを実行する権限をユーザーとロールに付与する IAM ポリシーを作成する必要があります。続いて、管理者はそれらの権限が必要な IAM ユーザーまたはグループにそのポリシーをアタッチする必要があります。

JSON ポリシードキュメントのこれらの例を使用して、IAM アイデンティティベースのポリシーを作成する方法については、「IAM ユーザーガイド」の「[JSON タブでのポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor)」を参照してください。

**Topics**
+ [ポリシーに関するベストプラクティス](#security_iam_service-with-iam-policy-best-practices)
+ [Timestream for LiveAnalytics コンソールの使用](#security_iam_id-based-policy-examples-console)
+ [自分の権限の表示をユーザーに許可する](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Timestream for LiveAnalytics の一般的なオペレーション](#security_iam_id-based-policy-examples-common-operations)
+ [タグに基づく Timestream for LiveAnalytics リソースへのアクセス](#security_iam_id-based-policy-examples-tags)
+ [スケジュールされたクエリ](#security_iam_id-based-policy-examples-sheduledqueries)

## ポリシーに関するベストプラクティス
<a name="security_iam_service-with-iam-policy-best-practices"></a>

アイデンティティベースポリシーは、アカウントで、あるユーザーが Timestream for LiveAnalytics リソースを作成、アクセス、または削除できるかどうかを決定します。これらのアクションでは、 AWS アカウントに費用が発生する場合があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:
+ ** AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する** – ユーザーとワークロードにアクセス許可の付与を開始するには、多くの一般的なユースケースにアクセス許可を付与する*AWS 管理ポリシー*を使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義することで、アクセス許可をさらに減らすことをお勧めします。詳細については、*IAM ユーザーガイド* の [AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) または [ジョブ機能のAWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) を参照してください。
+ **最小特権を適用する** – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権アクセス許可とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、*IAM ユーザーガイド* の [IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) を参照してください。
+ **IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。条件を使用して、サービスアクションが などの特定の を通じて使用されている場合に AWS のサービス、サービスアクションへのアクセスを許可することもできます CloudFormation。詳細については、*IAM ユーザーガイド* の [IAM JSON ポリシー要素:条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) を参照してください。
+ **IAM アクセスアナライザー を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する** - IAM アクセスアナライザー は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、*IAM ユーザーガイド* の [IAM Access Analyzer でポリシーを検証する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) を参照してください。
+ **多要素認証 (MFA) を要求する** – で IAM ユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、MFA をオンにしてセキュリティを強化します。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、*IAM ユーザーガイド* の [MFA を使用した安全な API アクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) を参照してください。

IAM でのベストプラクティスの詳細については、*IAM ユーザーガイド* の [IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) を参照してください。

## Timestream for LiveAnalytics コンソールの使用
<a name="security_iam_id-based-policy-examples-console"></a>

Timestream for LiveAnalytics には、Amazon Timestream for LiveAnalytics コンソールにアクセスするための特定の権限は必要ありません。 AWS アカウントの LiveAnalytics リソースの Timestream の詳細を一覧表示および表示するには、少なくとも読み取り専用のアクセス許可が必要です。最小限必要な許可よりも厳しく制限されたアイデンティティベースポリシーを作成すると、そのポリシーを添付したエンティティ (IAM ユーザーまたはロール) に対してコンソールが意図したとおりに機能しません。

## 自分の権限の表示をユーザーに許可する
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または AWS CLI または AWS API を使用してプログラムでこのアクションを実行するアクセス許可が含まれています。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## Timestream for LiveAnalytics の一般的なオペレーション
<a name="security_iam_id-based-policy-examples-common-operations"></a>

以下は、Timestream for LiveAnalytics サービスの一般的なオペレーションを許可する IAM ポリシーの例です。

**Topics**
+ [すべてのオペレーションを許可する](#security_iam_id-based-policy-examples-common-operations.all)
+ [SELECT オペレーションの許可](#security_iam_id-based-policy-examples-common-operations.select)
+ [複数のリソースに対する SELECT オペレーションの許可](#security_iam_id-based-policy-examples-common-operations.select-multiple-resources)
+ [メタデータオペレーションの許可](#security_iam_id-based-policy-examples-common-operations.metadata)
+ [INSERT オペレーションの許可](#security_iam_id-based-policy-examples-common-operations.insert)
+ [CRUD オペレーションの許可](#security_iam_id-based-policy-examples-common-operations.crud)
+ [クエリをキャンセルし、リソースを指定せずにデータを選択する](#security_iam_id-based-policy-examples-common-operations.cancel-selectvalues)
+ [データベースの作成、記述、削除、更新](#security_iam_id-based-policy-examples-common-operations.cddd)
+ [リストされたデータベースをタグ `{"Owner": "${username}"}` で制限する](#security_iam_id-based-policy-examples-common-operations.list-by-tag)
+ [データベース内のテーブルの一覧表示](#security_iam_id-based-policy-examples-common-operations.list-all-tables)
+ [テーブルでの作成、記述、削除、更新、選択](#security_iam_id-based-policy-examples-common-operations.cddus-table)
+ [テーブルによるクエリの制限](#security_iam_id-based-policy-examples-common-operations.limit-query-table)

### すべてのオペレーションを許可する
<a name="security_iam_id-based-policy-examples-common-operations.all"></a>

以下は、Timestream for LiveAnalytics のすべてのオペレーションを許可するサンプルポリシーです。

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

****  

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

------

### SELECT オペレーションの許可
<a name="security_iam_id-based-policy-examples-common-operations.select"></a>

次のサンプルポリシーは、特定のリソースに対して `SELECT` スタイルのクエリを許可します。

**注記**  
`<account_ID>` は自分の Amazon アカウント ID に置き換えます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:Select",
                "timestream:DescribeTable",
                "timestream:ListMeasures"
            ],
            "Resource": "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/DevOps"
        },
        {
            "Effect": "Allow",
            "Action": [
                "timestream:DescribeEndpoints",
                "timestream:SelectValues",
                "timestream:CancelQuery"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### 複数のリソースに対する SELECT オペレーションの許可
<a name="security_iam_id-based-policy-examples-common-operations.select-multiple-resources"></a>

次のサンプルポリシーは、複数のリソースに対して `SELECT` スタイルのクエリを許可します。

**注記**  
`<account_ID>` は自分の Amazon アカウント ID に置き換えます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:Select",
                "timestream:DescribeTable",
                "timestream:ListMeasures"
            ],
            "Resource": [
                "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/DevOps",
                "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/DevOps1",
                "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/DevOps2"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "timestream:DescribeEndpoints",
                "timestream:SelectValues",
                "timestream:CancelQuery"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### メタデータオペレーションの許可
<a name="security_iam_id-based-policy-examples-common-operations.metadata"></a>

次のサンプルポリシーは、メタデータクエリの実行をユーザーに許可しますが、Timestream for LiveAnalytics で実際のデータを読み書きするオペレーションの実行は許可しません。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:DescribeEndpoints",
                "timestream:DescribeTable",
                "timestream:ListMeasures",
                "timestream:SelectValues",
                "timestream:ListTables",
                "timestream:ListDatabases",
                "timestream:CancelQuery"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### INSERT オペレーションの許可
<a name="security_iam_id-based-policy-examples-common-operations.insert"></a>

次のサンプルポリシーは、アカウント `<account_id>` の `database/sampleDB/table/DevOps` で `INSERT` オペレーションを実行することをユーザーに許可します。

**注記**  
`<account_ID>` は自分の Amazon アカウント ID に置き換えます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "timestream:WriteRecords"
            ],
            "Resource": [
                "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/DevOps"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "timestream:DescribeEndpoints"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}
```

------

### CRUD オペレーションの許可
<a name="security_iam_id-based-policy-examples-common-operations.crud"></a>

次のサンプルポリシーは、ユーザーに Timestream for LiveAnalytics での CRUD オペレーション実行を許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:DescribeEndpoints",
                "timestream:CreateTable",
                "timestream:DescribeTable",
                "timestream:CreateDatabase",
                "timestream:DescribeDatabase",
                "timestream:ListTables",
                "timestream:ListDatabases",
                "timestream:DeleteTable",
                "timestream:DeleteDatabase",
                "timestream:UpdateTable",
                "timestream:UpdateDatabase"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### クエリをキャンセルし、リソースを指定せずにデータを選択する
<a name="security_iam_id-based-policy-examples-common-operations.cancel-selectvalues"></a>

次のサンプルポリシーは、ユーザーがクエリをキャンセルし、リソース仕様を必要としないデータに対して `Select` クエリを実行することを許可します。

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

****  

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

------

### データベースの作成、記述、削除、更新
<a name="security_iam_id-based-policy-examples-common-operations.cddd"></a>

次のサンプルポリシーは、ユーザーに `sampleDB` データベースの作成、記述、削除を許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:CreateDatabase",
                "timestream:DescribeDatabase",
                "timestream:DeleteDatabase",
                "timestream:UpdateDatabase"
            ],
            "Resource": "arn:aws:timestream:us-east-1:111122223333:database/sampleDB"
        }
    ]
}
```

------

### リストされたデータベースをタグ `{"Owner": "${username}"}` で制限する
<a name="security_iam_id-based-policy-examples-common-operations.list-by-tag"></a>

次のサンプルポリシーは、ユーザーにキーと値のペア `{"Owner": "${username}"}` でタグ付けされたすべてのデータベースの一覧表示を許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:ListDatabases"
            ],
            "Resource": "arn:aws:timestream:us-east-1:111122223333:database/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/Owner": "${aws:username}"
                }
            }
        }
    ]
}
```

------

### データベース内のテーブルの一覧表示
<a name="security_iam_id-based-policy-examples-common-operations.list-all-tables"></a>

次のサンプルポリシーは、データベース `sampleDB` 内のすべてのテーブルを一覧表示します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:ListTables"
            ],
            "Resource": "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/"
        }
    ]
}
```

------

### テーブルでの作成、記述、削除、更新、選択
<a name="security_iam_id-based-policy-examples-common-operations.cddus-table"></a>

次のサンプルポリシーは、データベース `sampleDB` 内でのテーブルの作成、テーブルの記述、テーブルの削除、テーブルの更新、テーブル `DevOps` に対する `Select` クエリの実行をユーザーに許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:CreateTable",
                "timestream:DescribeTable",
                "timestream:DeleteTable",
                "timestream:UpdateTable",
                "timestream:Select"
            ],
            "Resource": "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/DevOps"
        }
    ]
}
```

------

### テーブルによるクエリの制限
<a name="security_iam_id-based-policy-examples-common-operations.limit-query-table"></a>

次のサンプルポリシーは、ユーザーにデータベース `sampleDB` で `DevOps` を除くすべてのテーブルのクエリ実行を許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:Select"
            ],
            "Resource": "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/*"
        },
        {
            "Effect": "Deny",
            "Action": [
                "timestream:Select"
            ],
            "Resource": "arn:aws:timestream:us-east-1:111122223333:database/sampleDB/table/DevOps"
        }
    ]
}
```

------

## タグに基づく Timestream for LiveAnalytics リソースへのアクセス
<a name="security_iam_id-based-policy-examples-tags"></a>

アイデンティティベースのポリシーの条件を使用して、タグに基づいて Timestream for LiveAnalytics リソースへのアクセスを管理できます。このセクションでは、いくつかの例を紹介します。

次の例で、テーブルの `Owner` にユーザーのユーザー名の値が含まれている場合に、そのテーブルを表示するためのアクセス許可をユーザーに付与するポリシーを作成する方法について説明します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ReadOnlyAccessTaggedTables",
            "Effect": "Allow",
            "Action": "timestream:Select",
            "Resource": "arn:aws:timestream:us-east-2:111122223333:database/mydatabase/table/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/Owner": "${aws:username}"
                }
            }
        }
    ]
}
```

------

このポリシーはアカウントの IAM ユーザーにアタッチできます。`richard-roe` という名前のユーザーが Timestream for LiveAnalytics テーブルを表示しようとする場合、そのテーブルには `Owner=richard-roe` または `owner=richard-roe` とタグ付けされている必要があります。それ以外の場合、アクセスは拒否されます。条件キー名では大文字と小文字は区別されないため、条件タグキー `Owner` は `Owner` と `owner` に一致します。詳細については、「*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素：条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)」を参照してください。

次のポリシーは、リクエストで渡されたタグにキー `Owner` と値 `username` がある場合に、ユーザーにそのタグを使用してテーブルを作成する権限を付与します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CreateTagTableUser",
            "Effect": "Allow",
            "Action": [
                "timestream:CreateTable",
                "timestream:TagResource"
            ],
            "Resource": "arn:aws:timestream:us-east-2:111122223333:database/mydatabase/table/*",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "aws:RequestTag/Owner": "${aws:username}"
                }
            }
        }
    ]
}
```

------

以下のポリシーは、`dev` または `test` のいずれかに設定した `env` タグを持つデータベースでの `DescribeDatabase` API の使用を許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDescribe",
            "Effect": "Allow",
            "Action": [
                "timestream:DescribeEndpoints",
                "timestream:DescribeDatabase"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowTagAccessForDevResources",
            "Effect": "Allow",
            "Action": [
                "timestream:TagResource"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/env": [
                        "test",
                        "dev"
                    ]
                }
            }
        }
    ]
}
```

------

このポリシーでは、`Condition` キーを使って、キー `env` と値 `test`、`qa`、`dev` のいずれかを持つタグをリソースに追加できます。

## スケジュールされたクエリ
<a name="security_iam_id-based-policy-examples-sheduledqueries"></a>

### ScheduledQuery の一覧表示、削除、更新、実行
<a name="security_iam_id-based-policy-examples-sheduledqueries-alloperations"></a>

次のサンプルポリシーは、ユーザーにスケジュールされたクエリの一覧表示、削除、更新、実行を許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "timestream:DeleteScheduledQuery",
                "timestream:ExecuteScheduledQuery",
                "timestream:UpdateScheduledQuery",
                "timestream:ListScheduledQueries",
                "timestream:DescribeEndpoints"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### カスタマーマネージド KMS キーを使用した CreateScheduledQuery
<a name="security_iam_id-based-policy-examples-sheduledqueries-create"></a>

次のサンプルポリシーは、カスタマーマネージド KMS キー *<keyid for ScheduledQuery>* を使用して暗号化されたスケジュールされたクエリをユーザーが作成することを許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::123456789012:role/ScheduledQueryExecutionRole"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "timestream:CreateScheduledQuery",
                "timestream:DescribeEndpoints"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "kms:DescribeKey",
                "kms:GenerateDataKey"
            ],
            "Resource": "arn:aws:kms:us-west-2:123456789012:key/<keyid for ScheduledQuery>",
            "Effect": "Allow"
        }
    ]
}
```

------

### カスタマーマネージド KMS キーを使用した DescribeScheduledQuery
<a name="security_iam_id-based-policy-examples-sheduledqueries-describe"></a>

次のサンプルポリシーは、カスタマーマネージド KMS キー *<keyid for ScheduledQuery>* を使用して作成されたスケジュールされたクエリをユーザーが記述することを許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "timestream:DescribeScheduledQuery",
                "timestream:DescribeEndpoints"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": "arn:aws:kms:us-west-2:123456789012:key/<keyid for ScheduledQuery>",
            "Effect": "Allow"
        }
    ]
}
```

------

### 実行ロールの権限 (スケジュールされたクエリにはカスタマーマネージド KMS キーを使用し、エラーレポートには SSE-KMS を使用)
<a name="security_iam_id-based-policy-examples-sheduledqueries-execrole"></a>

次のサンプルポリシーを、エラーレポートのスケジュールされたクエリの暗号化と `SSE-KMS` 暗号化にカスタマーマネージド KMS キーを使用する `CreateScheduledQuery` API の `ScheduledQueryExecutionRoleArn` パラメータで指定された IAM ロールにアタッチします。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "kms:GenerateDataKey"
            ],
            "Resource": "arn:aws:kms:us-west-2:123456789012:key/<keyid for ScheduledQuery>",
            "Effect": "Allow"
        },
        {
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-west-2:123456789012:key/<keyid for database-1>",
                "arn:aws:kms:us-west-2:123456789012:key/<keyid for database-n>",
                "arn:aws:kms:us-west-2:123456789012:key/<keyid for ScheduledQuery>"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "sns:Publish"
            ],
            "Resource": [
                "arn:aws:sns:us-west-2:123456789012:scheduled-query-notification-topic-*"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "timestream:Select",
                "timestream:SelectValues",
                "timestream:WriteRecords"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "s3:PutObject",
                "s3:GetBucketAcl"
            ],
            "Resource": [
                "arn:aws:s3:::scheduled-query-error-bucket",
                "arn:aws:s3:::scheduled-query-error-bucket/*"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

### 実行ロールの信頼関係
<a name="security_iam_id-based-policy-examples-sheduledqueries-exectrust"></a>

以下は、`CreateScheduledQuery` API の `ScheduledQueryExecutionRoleArn` パラメータで指定された IAM ロールの信頼関係です。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "timestream.amazonaws.com"
                ]
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

### アカウント内で作成されたすべてのスケジュールされたクエリへのアクセスを許可する
<a name="security_iam_id-based-policy-examples-sheduledqueries-accountid"></a>

次のサンプルポリシーを `CreateScheduledQuery` API の `ScheduledQueryExecutionRoleArn` パラメータで指定された IAM ロールにアタッチして、アカウント *Account\$1ID* 内で作成されたすべてのスケジュールされたクエリへのアクセスを許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "timestream.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "Account_ID"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:timestream:us-west-2:111122223333:scheduled-query/*"
                }
            }
        }
    ]
}
```

------

### 特定の名前でスケジュールされたすべてのクエリへのアクセスを許可する
<a name="security_iam_id-based-policy-examples-sheduledqueries-queryname"></a>

次のサンプルポリシーを `CreateScheduledQuery` API の `ScheduledQueryExecutionRoleArn` パラメータで指定された IAM ロールにアタッチして、アカウント *Account\$1ID* 内で *Scheduled\$1Query\$1Name* で始まる名前でスケジュールされたすべてのクエリへのアクセスを許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "timestream.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "Account_ID"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:timestream:us-west-2:111122223333:scheduled-query/Scheduled_Query_Name*"
                }
            }
        }
    ]
}
```

------