Comment rédiger une politique IAM efficace

Les politiques IAM définissent les autorisations associées aux objets d'un stockage dans le cloud. Votre capacité à rédiger des politiques efficaces peut renforcer la protection des données.

Table des matières

Comment rédiger une politique IAM efficace

La gestion des identités et des accès (IAM, Identity and Access Management) est un concept largement utilisé dans les services AWS pour régler les questions de sécurité. Il est donc bien utile d'en apprendre davantage à son sujet. Le système IAM peut sembler très complexe au premier abord, car il comprend plusieurs composants. Cet article vous permettra d'approfondir vos connaissances sur IAM et ses principes, et de créer une politique IAM efficace.  

Il est important de noter qu'IAM n'est qu'un service parmi tous ceux qu'AWS propose. Cependant, il est conseillé d'associer ces services de manière prudente.

Qu'est-ce qu'une politique IAM ?

AWS IAM est un service Web qui vous permet de gérer l'accès de vos utilisateurs aux ressources S3 de façon sécurisée. Avec AWS, vous déterminez qui peut accéder à vos ressources AWS (authentification), à quelles ressources ces utilisateurs ont accès et de quelle manière ils peuvent accéder à celles-ci (autorisation).  

Comment le service IAM protège-t-il les ressources ?

C'est vous qui contrôlez l'accès aux ressources en définissant des politiques et en les associant à des identités IAM (utilisateurs, groupes d'utilisateurs ou rôles). Une politique est un objet qui définit les autorisations associées à une identité ou une ressource. Le système de stockage responsable examine ces politiques lorsqu'un principal IAM (utilisateur ou rôle) envoie une demande visant à les mettre en œuvre. Les autorisations définies dans les politiques déterminent si une demande est acceptée ou refusée. Les politiques sont généralement définies dans des fichiers JSON.  

Les politiques IAM établissent l'autorisation d'effectuer des actions indépendamment de la manière dont elles seront réalisées. Si une politique autorise l’action GetUser, un utilisateur associé à cette politique peut obtenir des informations sur les utilisateurs via la console de gestion (AWS Management Console), l'interface en ligne de commande (AWS CLI) ou l'API AWS. Lors de la création d’un utilisateur IAM, vous pouvez indiquer si vous autorisez l’accès via la console ou par programmation. Si l’accès via la console est autorisé, l'utilisateur IAM peut se connecter avec son nom d'utilisateur et son mot de passe. Si l'accès par programmation est autorisé, l'utilisateur peut travailler via la CLI ou l'API avec des clés d'accès.  

En quoi les politiques IAM optimisent-elles Seagate Lyve Cloud Storage ?

Lyve Cloud est un élément qui complète le stockage d'objets S3. Ce service renforce la sécurité et favorise l'exploitation des stockages à long terme de données peu utilisées et peut être associé à des services supplémentaires pour optimiser la stratégie de sauvegarde et de récupération. Les politiques IAM vous permettent de personnaliser les mesures de sécurité et les autorisations des différents objets stockés au sein de Lyve Cloud sur des environnements privés, publics, hybrides et multicloud.

Les différents types de politiques IAM

Voici la liste des politiques disponibles dans AWS, de la plus utilisée à la moins utilisée. Pour plus d'informations sur ces politiques, consultez les sections ci-dessous.  

Politiques basées sur une identité

Vous pouvez associer des identités IAM à des politiques gérées et à des politiques en ligne (utilisateurs, groupes auxquels les utilisateurs appartiennent, ou rôles). Les autorisations sont accordées à l'identité via les politiques basées sur une identité.  

Politiques basées sur une ressource

Vous pouvez associer des ressources à des politiques en ligne. La plupart du temps, les politiques basées sur une ressource sont associées à des compartiments S3 et à des rôles IAM. Les autorisations sont accordées au principal défini dans la politique par le biais de politiques basées sur une ressource. Le principal peut appartenir au même compte que la ressource ou à un autre compte.  

Limites d'autorisations

Vous pouvez utiliser une politique gérée pour définir les autorisations d'une entité IAM (utilisateur ou rôle). Cette politique établit les autorisations maximales que les politiques basées sur une ressource peuvent accorder à une entité, mais elle n'accorde pas ces autorisations. Les limites d'autorisations ne spécifient pas le nombre maximal d'autorisations qu'une politique basée sur une ressource peut accorder à un objet.  

Politiques de contrôle des services AWS Organizations

Vous pouvez utiliser une politique de contrôle des services (SCP) AWS Organizations pour définir les autorisations maximales dont les membres du compte d'une organisation ou d'une unité d'organisation peuvent bénéficier. Les SCP limitent les autorisations que les politiques basées sur une identité ou sur une ressource accordent aux entités (utilisateurs ou rôles) au sein du compte, mais n'accordent pas ces autorisations.  

Listes de contrôle d'accès (ACL)

Vous pouvez utiliser une ACL pour restreindre l'accès à une ressource par les principaux appartenant à d'autres comptes. Les ACL sont semblables aux politiques basées sur une ressource, bien qu'elles soient le seul type de politique qui n'utilise pas la structure d'un document de politique JSON. Les ACL sont des règles d'autorisations entre comptes qui accordent des autorisations au principal spécifié. Les ACL ne permettent pas d'accorder des autorisations à des entités membres du même compte.  

Politiques de session

Vous pouvez transmettre des politiques de session avancées lorsque vous utilisez la CLI ou l'API AWS pour endosser un rôle ou un utilisateur fédéré. Les politiques de session limitent les droits que les politiques basées sur une identité applicables au rôle ou à l'utilisateur accordent à la session. Ces politiques définissent les autorisations applicables à une nouvelle session, mais n'accordent pas ces autorisations.

Éléments importants de la structure d'une politique IAM

Utilisateur IAM

Les utilisateurs IAM AWS sont des entités que vous créez pour représenter une personne ou une application qui interagit avec AWS. Les utilisateurs AWS sont constitués d'un nom et d'identifiants.

Les utilisateurs IAM disposant d'autorisations d'administrateur sont différents des utilisateurs racine du compte AWS. Les comptes AWS ne sont associés qu'à un et un seul utilisateur IAM.  

Identité IAM

Objets ressource qui sont utilisés pour identifier et grouper des ressources IAM. Des politiques peuvent être attachées aux identités IAM. Cela inclut les utilisateurs, les groupes et les rôles.  

Ressource IAM

Une ressource contient des objets tels que des utilisateurs, des groupes, des rôles, des politiques et des fournisseurs d'identité. IAM vous permet d'ajouter, de modifier et de supprimer des ressources, comme les autres services AWS.  

Entité IAM

AWS utilise les objets ressource IAM pour l'authentification. Cela comprend les utilisateurs et les rôles IAM, entre autres.

Principal

Application ou utilisateur qui se sert de l’utilisateur racine du compte AWS, d’un utilisateur IAM ou d’un rôle IAM pour se connecter à AWS. Cela inclut les utilisateurs fédérés et les rôles assumés.  

Rôle

Dans AWS, les rôles sont semblables aux utilisateurs puisqu'ils sont des objets identité associés à des politiques d'autorisation qui déterminent ce que l'identité concernée est autorisée à faire. Cependant, un rôle n'a pas d'identifiants (mot de passe ou clé d'accès). Un rôle individuel est fait pour être endossé par quiconque en a besoin, et n'est associé à personne en particulier.

Comment rédiger une politique IAM efficace

Vous pouvez créer une politique gérée par le client en appliquant une des méthodes suivantes dans AWS Management Console :  

  • JSON : collez et personnalisez un exemple publié de politique basée sur une identité.  
  • Visual editor (Éditeur visuel) : créez une nouvelle politique de toutes pièces dans l'éditeur visuel. Avec l'éditeur visuel, vous n'avez pas besoin de comprendre la syntaxe JSON.  
  • Importation : importez et personnalisez une politique gérée depuis votre compte. Vous pouvez importer une politique gérée par AWS ou une politique gérée par le client que vous avez créée précédemment.  

Le nombre et la taille des ressources IAM dans un compte AWS sont limités. Pour plus d'informations, veuillez consulter les quotas IAM et AWS STS.  

IAM Policy Generator : puis-je automatiser ce processus ?

L'outil AWS Policy Generator (Générateur de politique AWS) permet de développer des politiques régissant l'accès aux produits et ressources AWS.

Le nouvel outil AWS Policy Generator simplifie le processus de création des documents de politique pour le stockage d'objets. Pour commencer, choisissez le type de politique que vous souhaitez écrire.  

Étape 1 : Sélectionner le type de politique

Chaque politique inclut des autorisations. Vous pouvez créer les types de politiques suivants : Politique IAM (IAM Policy), politique de compartiment S3 (S3 Bucket Policy), politique de rubrique SNS (SNS Topic Policy), politique de point de terminaison VPC (VPC Endpoint Policy) et politique de file d'attente SQS (SQS Queue Policy).  

Étape 2 : Ajouter une ou plusieurs instructions

Une instruction est la présentation concise d'une autorisation. Lisez l'explication qui suit pour savoir quels éléments peuvent être utilisés dans une instruction.  

Étape 3 : Générer la politique

Une fois les instructions ajoutées, vous pouvez générer la politique. Une politique est un document (rédigé dans le langage de la politique d'accès) qui contient une ou plusieurs instructions.