Bonnes pratiques pour le contrôle d'accès

Cette page décrit les bonnes pratiques concernant l'utilisation d'Identity and Access Management (IAM) et des listes de contrôle d'accès (LCA) pour gérer l'accès à vos données.

Les stratégies IAM et les LCA nécessitent une gestion active pour être efficaces. Avant de rendre un bucket ou un objet accessible aux autres utilisateurs, veillez à bien savoir avec qui vous souhaitez le partager et quels rôles vous souhaitez attribuer à chaque personne. Au fil du temps, les modifications apportées au processus de gestion de projet, aux modèles d'utilisation et à la propriété organisationnelle peuvent vous contraindre à modifier les paramètres IAM ou LCA associés aux buckets et aux projets, surtout si vous gérez Cloud Storage dans le cadre d'une grande organisation ou pour un grand groupe d'utilisateurs. Lorsque vous évaluez et planifiez vos paramètres de contrôle des accès, gardez à l'esprit les bonnes pratiques présentées ci-dessous :

  • Utilisez le principe du moindre privilège lorsque vous accordez l'accès à vos buckets et objets.

    Le principe du moindre privilège est une mesure de sécurité appliquée au moment d'accorder l'accès à vos ressources. Lorsque vous accordez un accès selon ce principe, vous attribuez le niveau minimal d'autorisations requis pour qu'un utilisateur puisse accomplir la tâche qui lui est assignée. Par exemple, si vous souhaitez partager des fichiers avec un autre utilisateur, vous devez lui attribuer le rôle IAM storage.objectViewer ou l'autorisation LCA READER, et non le rôle IAM storage.admin ou l'autorisation LCA OWNER.

  • Évitez d'accorder des rôles IAM avec l'autorisation setIamPolicy ou d'accorder l'autorisation LCA OWNER aux utilisateurs que vous ne connaissez pas.

    L'autorisation IAM setIamPolicy ou l'autorisation LCA OWNER permet à un utilisateur de modifier les autorisations et de prendre le contrôle des données. Vous ne devez utiliser les rôles avec ces autorisations que si vous souhaitez déléguer le contrôle administratif sur les objets et les buckets.

  • Soyez prudent lorsque vous accordez des autorisations aux utilisateurs anonymes.

    Les types de comptes principaux allUsers et allAuthenticatedUsers ne doivent être utilisés que s'il est acceptable que tout internaute puisse lire et analyser vos données. Même si ces niveaux d'accès peuvent être utiles pour des applications et des scénarios particuliers, il est généralement déconseillé d'accorder certaines autorisations telles que les autorisations IAM setIamPolicy, update, create ou delete, ou les autorisations LCA OWNER.

  • Veillez à déléguer le contrôle administratif de vos buckets.

    Vous devez vous assurer que vos ressources peuvent toujours être gérées par d'autres membres de l'équipe lorsqu'une personne dotée d'un accès administrateur quitte le groupe.

    Pour empêcher les ressources d'être inaccessibles, vous pouvez effectuer l'une des opérations suivantes :

    • Accordez le rôle IAM Administrateur de l'espace de stockage de votre projet à un groupe plutôt qu'à une personne.

    • Accordez le rôle Administrateur de l'espace de stockage IAM de votre projet à au moins deux personnes.

    • Accordez l'autorisation LCA OWNER pour votre bucket à au moins deux personnes.

  • Tenez compte du comportement interopérable de Cloud Storage.

    Lorsque vous utilisez l'API XML pour permettre un accès interopérable avec d'autres services de stockage, tels qu'Amazon S3, l'identifiant de signature détermine la syntaxe des LCA. Par exemple, si l'outil ou la bibliothèque que vous employez demande à Cloud Storage de récupérer les LCA, et si la requête inclut l'identifiant de signature d'un autre fournisseur de stockage, Cloud Storage renvoie un document XML utilisant la syntaxe de LCA de ce fournisseur. Si l'outil ou la bibliothèque que vous employez demande à Cloud Storage d'appliquer les LCA, et si la requête inclut l'identifiant de signature d'un autre fournisseur de stockage, Cloud Storage s'attend à recevoir un document XML utilisant la syntaxe de LCA de ce fournisseur.

    Pour en savoir plus sur l'utilisation de l'API XML pour l'interopérabilité avec Amazon S3, consultez la page Migrer depuis Amazon S3 vers Cloud Storage.

Étape suivante