

Pour des fonctionnalités similaires à celles d'Amazon Timestream pour, pensez à Amazon Timestream LiveAnalytics pour InfluxDB. Il permet une ingestion simplifiée des données et des temps de réponse aux requêtes à un chiffre en millisecondes pour des analyses en temps réel. Pour en savoir plus, [cliquez ici](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html).

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Amazon Timestream LiveAnalytics pour des exemples de politiques basées sur l'identité
<a name="security_iam_id-based-policy-examples"></a>

Par défaut, les utilisateurs et les rôles IAM ne sont pas autorisés à créer ou à modifier Timestream pour les ressources. LiveAnalytics Ils ne peuvent pas non plus effectuer de tâches à l'aide du AWS Management Console CQLSH ou AWS de l' AWS CLI API. Un administrateur IAM doit créer des politiques IAM autorisant les utilisateurs et les rôles à exécuter des opérations d'API spécifiques sur les ressources spécifiées dont ils ont besoin. Il doit ensuite attacher ces politiques aux utilisateurs ou aux groupes IAM ayant besoin de ces autorisations.

Pour savoir comment créer une stratégie IAM basée sur l'identité à l'aide de ces exemples de documents de stratégie JSON, veuillez consulter [Création de stratégies dans l'onglet JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor) dans le *Guide de l'utilisateur IAM*.

**Topics**
+ [Bonnes pratiques en matière de politiques](#security_iam_service-with-iam-policy-best-practices)
+ [Utilisation du Timestream pour console LiveAnalytics](#security_iam_id-based-policy-examples-console)
+ [Autorisation accordée aux utilisateurs pour afficher leurs propres autorisations](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Opérations courantes dans Timestream pour LiveAnalytics](#security_iam_id-based-policy-examples-common-operations)
+ [Timestream pour l'accès aux LiveAnalytics ressources en fonction des balises](#security_iam_id-based-policy-examples-tags)
+ [Requêtes planifiées](#security_iam_id-based-policy-examples-sheduledqueries)

## Bonnes pratiques en matière de politiques
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Les politiques basées sur l'identité déterminent si quelqu'un peut créer, accéder ou supprimer Timestream pour les LiveAnalytics ressources de votre compte. Ces actions peuvent entraîner des frais pour votre Compte AWS. Lorsque vous créez ou modifiez des politiques basées sur l’identité, suivez ces instructions et recommandations :
+ **Commencez AWS par les politiques gérées et passez aux autorisations du moindre privilège : pour commencer à accorder des autorisations** à vos utilisateurs et à vos charges de travail, utilisez les *politiques AWS gérées* qui accordent des autorisations pour de nombreux cas d'utilisation courants. Ils sont disponibles dans votre Compte AWS. Nous vous recommandons de réduire davantage les autorisations en définissant des politiques gérées par les AWS clients spécifiques à vos cas d'utilisation. Pour plus d’informations, consultez [politiques gérées par AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) ou [politiques gérées par AWS pour les activités professionnelles](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) dans le *Guide de l’utilisateur IAM*.
+ **Accordez les autorisations de moindre privilège** : lorsque vous définissez des autorisations avec des politiques IAM, accordez uniquement les autorisations nécessaires à l’exécution d’une seule tâche. Pour ce faire, vous définissez les actions qui peuvent être entreprises sur des ressources spécifiques dans des conditions spécifiques, également appelées *autorisations de moindre privilège*. Pour plus d’informations sur l’utilisation d’IAM pour appliquer des autorisations, consultez [politiques et autorisations dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) dans le *Guide de l’utilisateur IAM*.
+ **Utilisez des conditions dans les politiques IAM pour restreindre davantage l’accès** : vous pouvez ajouter une condition à vos politiques afin de limiter l’accès aux actions et aux ressources. Par exemple, vous pouvez écrire une condition de politique pour spécifier que toutes les demandes doivent être envoyées via SSL. Vous pouvez également utiliser des conditions pour accorder l'accès aux actions de service si elles sont utilisées par le biais d'un service spécifique Service AWS, tel que CloudFormation. Pour plus d’informations, consultez [Conditions pour éléments de politique JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dans le *Guide de l’utilisateur IAM*.
+ **Utilisez l’Analyseur d’accès IAM pour valider vos politiques IAM afin de garantir des autorisations sécurisées et fonctionnelles** : l’Analyseur d’accès IAM valide les politiques nouvelles et existantes de manière à ce que les politiques IAM respectent le langage de politique IAM (JSON) et les bonnes pratiques IAM. IAM Access Analyzer fournit plus de 100 vérifications de politiques et des recommandations exploitables pour vous aider à créer des politiques sécurisées et fonctionnelles. Pour plus d’informations, consultez [Validation de politiques avec IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) dans le *Guide de l’utilisateur IAM*.
+ **Exiger l'authentification multifactorielle (MFA**) : si vous avez un scénario qui nécessite des utilisateurs IAM ou un utilisateur root, activez l'authentification MFA pour une sécurité accrue. Compte AWS Pour exiger la MFA lorsque des opérations d’API sont appelées, ajoutez des conditions MFA à vos politiques. Pour plus d’informations, consultez [Sécurisation de l’accès aux API avec MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) dans le *Guide de l’utilisateur IAM*.

Pour plus d’informations sur les bonnes pratiques dans IAM, consultez [Bonnes pratiques de sécurité dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) dans le *Guide de l’utilisateur IAM*.

## Utilisation du Timestream pour console LiveAnalytics
<a name="security_iam_id-based-policy-examples-console"></a>

Timestream for LiveAnalytics ne nécessite pas d'autorisations spécifiques pour accéder à Amazon Timestream pour console. LiveAnalytics Vous devez disposer d'au moins des autorisations en lecture seule pour répertorier et afficher les informations relatives au flux temporel des LiveAnalytics ressources de votre compte. AWS Si vous créez une politique basée sur l'identité qui est plus restrictive que les autorisations minimales requises, la console ne fonctionnera pas comme prévu pour les entités (utilisateurs et rôles IAM) tributaires de cette politique.

## Autorisation accordée aux utilisateurs pour afficher leurs propres autorisations
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Cet exemple montre comment créer une politique qui permet aux utilisateurs IAM d’afficher les politiques en ligne et gérées attachées à leur identité d’utilisateur. Cette politique inclut les autorisations permettant d'effectuer cette action sur la console ou par programmation à l'aide de l'API AWS CLI or AWS .

```
{
    "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": "*"
        }
    ]
}
```

## Opérations courantes dans Timestream pour LiveAnalytics
<a name="security_iam_id-based-policy-examples-common-operations"></a>

Vous trouverez ci-dessous des exemples de politiques IAM qui autorisent les opérations courantes dans le Timestream for Service. LiveAnalytics

**Topics**
+ [Autoriser toutes les opérations](#security_iam_id-based-policy-examples-common-operations.all)
+ [Autoriser les opérations SELECT](#security_iam_id-based-policy-examples-common-operations.select)
+ [Autoriser les opérations SELECT sur plusieurs ressources](#security_iam_id-based-policy-examples-common-operations.select-multiple-resources)
+ [Autoriser les opérations de métadonnées](#security_iam_id-based-policy-examples-common-operations.metadata)
+ [Autoriser les opérations INSERT](#security_iam_id-based-policy-examples-common-operations.insert)
+ [Autoriser les opérations CRUD](#security_iam_id-based-policy-examples-common-operations.crud)
+ [Annuler les requêtes et sélectionner les données sans spécifier de ressources](#security_iam_id-based-policy-examples-common-operations.cancel-selectvalues)
+ [Création, description, suppression et description d'une base de données](#security_iam_id-based-policy-examples-common-operations.cddd)
+ [Limiter les bases de données répertoriées par tag `{"Owner": "${username}"}`](#security_iam_id-based-policy-examples-common-operations.list-by-tag)
+ [Répertorier toutes les tables d'une base de données](#security_iam_id-based-policy-examples-common-operations.list-all-tables)
+ [Création, description, suppression, mise à jour et sélection dans un tableau](#security_iam_id-based-policy-examples-common-operations.cddus-table)
+ [Limiter une requête par table](#security_iam_id-based-policy-examples-common-operations.limit-query-table)

### Autoriser toutes les opérations
<a name="security_iam_id-based-policy-examples-common-operations.all"></a>

Voici un exemple de politique qui autorise toutes les opérations dans Timestream pour. LiveAnalytics

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

****  

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

------

### Autoriser les opérations SELECT
<a name="security_iam_id-based-policy-examples-common-operations.select"></a>

L'exemple de politique suivant autorise les requêtes de `SELECT` type -style sur une ressource spécifique.

**Note**  
`<account_ID>`Remplacez-le par votre identifiant de compte Amazon.

------
#### [ 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": "*"
        }
    ]
}
```

------

### Autoriser les opérations SELECT sur plusieurs ressources
<a name="security_iam_id-based-policy-examples-common-operations.select-multiple-resources"></a>

L'exemple de politique suivant autorise les requêtes de type « `SELECT` -style » sur plusieurs ressources. 

**Note**  
`<account_ID>`Remplacez-le par votre identifiant de compte Amazon.

------
#### [ 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": "*"
        }
    ]
}
```

------

### Autoriser les opérations de métadonnées
<a name="security_iam_id-based-policy-examples-common-operations.metadata"></a>

L'exemple de politique suivant permet à l'utilisateur d'effectuer des requêtes de métadonnées, mais ne l'autorise pas à effectuer des opérations de lecture ou d'écriture de données réelles dans 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": "*"
        }
    ]
}
```

------

### Autoriser les opérations INSERT
<a name="security_iam_id-based-policy-examples-common-operations.insert"></a>

L'exemple de politique suivant permet à un utilisateur d'effectuer une `INSERT` opération sur `database/sampleDB/table/DevOps` un compte`<account_id>`.

**Note**  
`<account_ID>`Remplacez-le par votre identifiant de compte Amazon.

------
#### [ 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"
        }
    ]
}
```

------

### Autoriser les opérations CRUD
<a name="security_iam_id-based-policy-examples-common-operations.crud"></a>

L'exemple de politique suivant permet à un utilisateur d'effectuer des opérations CRUD dans Timestream pour. LiveAnalytics

------
#### [ 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": "*"
        }
    ]
}
```

------

### Annuler les requêtes et sélectionner les données sans spécifier de ressources
<a name="security_iam_id-based-policy-examples-common-operations.cancel-selectvalues"></a>

L'exemple de politique suivant permet à un utilisateur d'annuler des requêtes et d'exécuter des `Select` requêtes sur des données qui ne nécessitent pas de spécification de ressource :

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

****  

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

------

### Création, description, suppression et description d'une base de données
<a name="security_iam_id-based-policy-examples-common-operations.cddd"></a>

L'exemple de politique suivant permet à un utilisateur de créer, de décrire, de supprimer et de décrire une base de données `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"
        }
    ]
}
```

------

### Limiter les bases de données répertoriées par tag `{"Owner": "${username}"}`
<a name="security_iam_id-based-policy-examples-common-operations.list-by-tag"></a>

L'exemple de politique suivant permet à un utilisateur de répertorier toutes les bases de données étiquetées avec une paire clé-valeur `{"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}"
                }
            }
        }
    ]
}
```

------

### Répertorier toutes les tables d'une base de données
<a name="security_iam_id-based-policy-examples-common-operations.list-all-tables"></a>

Exemple de politique suivant pour répertorier toutes les tables de la base de données `sampleDB` :

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

****  

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

------

### Création, description, suppression, mise à jour et sélection dans un tableau
<a name="security_iam_id-based-policy-examples-common-operations.cddus-table"></a>

L'exemple de politique suivant permet à un utilisateur de créer des tables, de décrire des tables, de supprimer des tables, de mettre à jour des tables et d'effectuer des `Select` requêtes sur une table `DevOps` dans une base de données `sampleDB` :

------
#### [ 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"
        }
    ]
}
```

------

### Limiter une requête par table
<a name="security_iam_id-based-policy-examples-common-operations.limit-query-table"></a>

L'exemple de politique suivant permet à un utilisateur d'interroger toutes les tables sauf celles de `DevOps` la base de données `sampleDB` :

------
#### [ 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 pour l'accès aux LiveAnalytics ressources en fonction des balises
<a name="security_iam_id-based-policy-examples-tags"></a>

Vous pouvez utiliser des conditions dans votre politique basée sur l'identité pour contrôler l'accès à Timestream pour les LiveAnalytics ressources en fonction de balises. Cette section fournit quelques exemples. 

L'exemple suivant montre comment créer une stratégie qui accorde des autorisations à un utilisateur pour afficher une table si son `Owner` contient la valeur du nom d'utilisateur de cet utilisateur.

------
#### [ 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}"
                }
            }
        }
    ]
}
```

------

Vous pouvez rattacher cette politique aux utilisateurs IAM de votre compte. Si un utilisateur nommé `richard-roe` tente d'afficher le flux temporel d'une LiveAnalytics table, la table doit être `Owner=richard-roe` balisée ou. `owner=richard-roe` Dans le cas contraire, l’utilisateur se voit refuser l'accès. La clé de condition d'étiquette `Owner` correspond à la fois à `Owner` et à `owner`, car les noms de clé de condition ne sont pas sensibles à la casse. Pour plus d'informations, veuillez consulter la rubrique [Éléments de stratégie JSON IAM : Condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dans le *Guide de l'utilisateur IAM*.

La politique suivante autorise un utilisateur à créer des tables avec des balises si la balise transmise dans la demande comporte une clé `Owner` et une valeur `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}"
                }
            }
        }
    ]
}
```

------

La politique ci-dessous autorise l'utilisation de l'`DescribeDatabase`API sur toute base de données dont la `env` balise est définie sur l'une `dev` ou l'autre des valeurs `test` suivantes :

------
#### [ 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"
                    ]
                }
            }
        }
    ]
}
```

------

Cette politique utilise une `Condition` clé pour autoriser une balise contenant la clé `env` et une valeur de `test``qa`, ou `dev` à être ajoutée à une ressource.

## Requêtes planifiées
<a name="security_iam_id-based-policy-examples-sheduledqueries"></a>

### Répertorier, supprimer, mettre à jour, exécuter ScheduledQuery
<a name="security_iam_id-based-policy-examples-sheduledqueries-alloperations"></a>

L'exemple de politique suivant permet à un utilisateur de répertorier, de supprimer, de mettre à jour et d'exécuter des requêtes planifiées.

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

****  

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

------

### CreateScheduledQuery à l'aide d'une clé KMS gérée par le client
<a name="security_iam_id-based-policy-examples-sheduledqueries-create"></a>

L'exemple de politique suivant permet à un utilisateur de créer une requête planifiée chiffrée à l'aide d'une clé KMS gérée par le client *<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"
        }
    ]
}
```

------

### DescribeScheduledQuery à l'aide d'une clé KMS gérée par le client
<a name="security_iam_id-based-policy-examples-sheduledqueries-describe"></a>

L'exemple de politique suivant permet à un utilisateur de décrire une requête planifiée créée à l'aide d'une clé KMS gérée par le client *<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"
        }
    ]
}
```

------

### Autorisations relatives au rôle d'exécution (utilisation d'une clé KMS gérée par le client pour les requêtes planifiées et d'une clé SSE-KMS pour les rapports d'erreur)
<a name="security_iam_id-based-policy-examples-sheduledqueries-execrole"></a>

Associez l'exemple de politique suivant au rôle IAM spécifié dans le `ScheduledQueryExecutionRoleArn` paramètre de l'`CreateScheduledQuery`API qui utilise la clé KMS gérée par le client pour le chiffrement des requêtes planifiées et le `SSE-KMS` cryptage pour les rapports d'erreur. 

------
#### [ 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"
        }
    ]
}
```

------

### Relation de confiance entre les rôles d'exécution
<a name="security_iam_id-based-policy-examples-sheduledqueries-exectrust"></a>

Voici la relation de confiance pour le rôle IAM spécifié dans le `ScheduledQueryExecutionRoleArn` paramètre de l'`CreateScheduledQuery`API.

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

****  

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

------

### Autoriser l'accès à toutes les requêtes planifiées créées dans un compte
<a name="security_iam_id-based-policy-examples-sheduledqueries-accountid"></a>

Associez l'exemple de politique suivant au rôle IAM spécifié dans le `ScheduledQueryExecutionRoleArn` paramètre de l'`CreateScheduledQuery`API pour autoriser l'accès à toutes les requêtes planifiées créées dans le compte*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/*"
                }
            }
        }
    ]
}
```

------

### Autoriser l'accès à toutes les requêtes planifiées portant un nom spécifique
<a name="security_iam_id-based-policy-examples-sheduledqueries-queryname"></a>

Associez l'exemple de politique suivant au rôle IAM spécifié dans le `ScheduledQueryExecutionRoleArn` paramètre de l'`CreateScheduledQuery`API pour autoriser l'accès à toutes les requêtes planifiées dont le nom commence par*Scheduled\$1Query\$1Name*, dans le compte*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/Scheduled_Query_Name*"
                }
            }
        }
    ]
}
```

------