Introduction aux autorisations DynamoDB

Introduction aux autorisations DynamoDB
Les administrateurs de la base de données doivent configurer les politiques de contrôle d'accès et d'autorisations dans DynamoDB pour les opérations transparentes et sécurisées. Les autorisations DynamoDB aident à contrôler l'accès aux actions et aux ressources de DynamoDB. Ainsi, vous pouvez joindre les autorisations à diverses identités IAM telles que les groupes, les utilisateurs et les rôles pour effectuer les opérations dans la base de données.

Les autorisations vous permettent de choisir et de spécifier les actions qu'un utilisateur, un rôle ou un groupe peut effectuer sur n'importe quelle ressource DynamoDB spécifiée. Par exemple, vous pouvez permettre à un groupe d'utilisateurs de lire et d'écrire les données sur une table donnée mais de leur refuser l'autorisation de supprimer le tableau. Bien sûr, vous pouvez y parvenir en attachant une politique IAM avec les autorisations appropriées à votre groupe.

Ce billet de blog vous présente les politiques IAM basées sur l'identité DynamoDB. Parmi les aspects que nous rechercherons, incluons les types d'autorisations DynamoDB et divers exemples.

Types d'autorisations DynamoDB

Voici quelques-uns des types de types d'autorisation DynamoDB que vous pouvez définir dans une politique IAM: \

  • Autorisations de table: ces autorisations contrôlent l'accès à des tables dynamoDB spécifiques. Par exemple, vous pouvez permettre à un utilisateur de lire et d'écrire les données sur un tableau particulier mais de ne pas leur permettre de supprimer le tableau.
  • Autorisations globales: cette catégorie d'autorisations contrôle l'accès à toutes les ressources DynamoDB. Par exemple, vous pouvez permettre à un utilisateur de créer et de supprimer n'importe quelle table DynamoDB dans votre compte.
  • Autorisations de flux: ces autorisations contrôlent l'accès aux flux DynamoDB. Un flux est une séquence commandée dans le temps de modifications au niveau de l'élément dans une table DynamoDB.
  • Autorisations d'index: ces autorisations contrôlent l'accès aux index secondaires globaux dans DynamoDB.
  • Autorisations de sauvegarde et de restauration: les autorisations de sauvegarde et de restauration contrôlent l'accès aux sauvegardes DynamoDB et restaurent.

Il est essentiel d'examiner attentivement les autorisations à accorder à chaque utilisateur, groupe ou rôle pour s'assurer que seuls les utilisateurs autorisés peuvent accéder aux ressources dont ils ont besoin.

Exemples d'autorisations DynamoDB

Voici quelques autorisations DynamoDB que vous pouvez considérer:

un. Création d'une autorisation de table

Cet exemple crée une stratégie IAM qui permet à un utilisateur spécifique de lire et d'écrire les données dans un tableau donné. La première étape consiste à faire le document de stratégie dans un fichier JSON comme indiqué dans ce qui suit:


"Version": "2012-10-17",
"Déclaration": [

"Effet": "Autoriser",
"Action": [
"DynamoDB: Putitem",
"DynamoDB: getItem",
"DynamoDB: UpdateItem",
"DynamoDB: DeleteItem"
]],
"Ressource": "ARN: AWS: DynamoDB: EU-West-1: 123456789012: Table / nom de matelle"

]]

Une fois que vous avez terminé la création du document de stratégie, procédez pour créer la stratégie et joindre l'utilisateur IAM comme illustré ci-dessous:

AWS IAM Create-Policy - Policy-Name DynamoDB-Table-Access - Policy-Document Fichier: // Politique.json
AWS IAM attach-user-Policy --User-name Myuser - Policy-Arn ARN: AWS: IAM :: 123456789012: Politique / DynamoDB-Table-Access

Ce code crée une stratégie nommée «DynamoDB-Table-Access» qui permet à l'utilisateur IAM «auser» de lire et d'écrire les données sur la table DynamoDB, «My-Table."L'utilisateur ne peut pas effectuer d'autres actions sur la table, comme la supprimer.

b. Création d'une politique de flux DynamoDB

L'exemple suivant crée une stratégie IAM qui permet à un utilisateur de lire les données à partir d'un flux DynamoDB:


"Version": "2012-10-17",
"Déclaration": [

"Effet": "Autoriser",
"Action": [
"DynamoDB: décritsream",
"DynamoDB: getRecords",
"DynamoDB: getSharditerator"
]],
"Ressource": "ARN: AWS: DynamoDB: EU-East-1: 123456789012: Table / My-Table-Name / Stream / *"

]]

Cette stratégie permet à l'utilisateur de récupérer des informations sur le flux, d'obtenir les enregistrements du flux et d'obtenir les itérateurs Shard pour le flux. Il ne permet pas à l'utilisateur d'effectuer d'autres actions sur le flux ou la table.

Vous pouvez attacher cette politique à un utilisateur, un groupe ou un rôle IAM en utilisant la CLI AWS ou la console de gestion AWS.

Conclusion

Les autorisations DynamoDB peuvent être très granulaires, vous permettant de spécifier les actions qui sont autorisées ou refusées pour chaque ressource. Cela permet de garantir que seuls les utilisateurs autorisés peuvent accéder et modifier vos ressources DynamoDB.

Il est essentiel de gérer soigneusement vos autorisations DynamoDB pour vous assurer que seuls les utilisateurs autorisés peuvent accéder et modifier vos ressources. Les autorisations insuffisantes peuvent entraîner des violations de sécurité et un accès non autorisé à vos données.