Concepts clés pour l'utilisation des contrôles d'accès basés sur des certificats dans AWS - AWS Conseils prescriptifs

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.

Concepts clés pour l'utilisation des contrôles d'accès basés sur des certificats dans AWS

Les contrôles d'accès basés sur des certificats AWS nécessitent de comprendre plusieurs concepts d'authentification et d'autorisation interdépendants. Par exemple, le principe du moindre privilège détermine l'étendue des autorisations accordées par le biais de l'authentification basée sur des certificats, ce qui affecte directement le rôle Gestion des identités et des accès AWS (IAM) et la conception des politiques. L'authentification basée sur les certificats elle-même repose sur la validation du certificat X.509 par rapport à des ancres de confiance configurées, qui définissent la chaîne de confiance cryptographique pour la vérification des certificats. Les informations d'identification de sécurité temporaires générées par ce processus présentent des caractéristiques de cycle de vie spécifiques qui ont un impact sur la gestion des sessions et les stratégies de rotation des informations d'identification. En outre, AWS Identity and Access Management Roles Anywhere implémente un modèle d'autorisation à double couche dans lequel les politiques de rôle IAM et les configurations de profil doivent autoriser l'accès. Si l'on ne comprend pas comment ces concepts interagissent, les implémentations peuvent entraîner des échecs d'authentification, un accès privilégié ou des failles de sécurité dans la chaîne de validation des certificats. Ces concepts constituent la base technique requise pour configurer correctement les relations de confiance, les limites d'autorisation et les cycles de vie des informations d'identification dans les systèmes de contrôle d'accès basés sur des certificats AWS .

Le moindre privilège

Le principe du moindre privilège est un concept de sécurité qui conseille d'accorder le niveau minimal d'accès (ou d'autorisations) nécessaire aux utilisateurs, aux programmes ou aux systèmes pour effectuer leurs tâches. La philosophie directrice est simple : moins une entité possède d'autorisations, plus le risque de dommages malveillants ou accidentels est faible.

Dans le contexte de AWS, ce principe est particulièrement pertinent. AWS fournit un large éventail de ressources et de services, des machines virtuelles aux ressources de stockage. Lorsque vous créez et gérez votre AWS infrastructure, l'application du principe du moindre privilège garantit que chaque entité (un utilisateur, un service ou une application) dispose uniquement des autorisations nécessaires pour fonctionner correctement, et rien de plus.

La mise en œuvre du moindre privilège AWS offre les avantages suivants :

  • Sécurité — En limitant l'accès, vous réduisez l'impact potentiel d'une faille de sécurité. Si un utilisateur ou un service dispose d'autorisations minimales, les risques de dommages sont considérablement réduits.

  • Conformité — De nombreux cadres réglementaires exigent des contrôles d'accès stricts. Le respect du principe du moindre privilège vous aide à répondre à ces exigences de conformité.

  • Simplicité opérationnelle — La gestion des autorisations peut devenir complexe. L'application du moindre privilège permet de maintenir les configurations aussi simples et gérables que possible.

Authentification par certificat

L'authentification basée sur les certificats utilise des certificats numériques pour vérifier l'identité d'un appareil, d'un service ou d'une application. Les certificats X.509 contiennent des attributs qui identifient l'entité et sont signés par une autorité de certification fiable. Cette méthode d'authentification élimine le besoin d'informations d'identification statiques et fournit un moyen cryptographiquement sécurisé d'établir la confiance.

Alors que l'authentification basée sur l'identité repose sur des informations d'identification directement associées à un rôle ou à un utilisateur IAM, l'authentification basée sur des certificats utilise des certificats X.509 pour établir l'identité. L'authentification basée sur les certificats présente des avantages dans les environnements hybrides en renforçant la sécurité, en automatisant la rotation des informations d'identification et en permettant de coder des attributs pouvant être utilisés pour un contrôle d'accès précis.

Ancrages et modèles de confiance

Vous établissez un lien de confiance entre IAM Roles Anywhere et votre autorité de certification (CA) en créant une ancre de confiance. Une ancre de confiance est une référence à l'une AWS CA privéeou l'autre source d'autorité de certification externe. Vos charges de travail ne AWS s'authentifient pas avec l'ancre de confiance en utilisant des certificats émis par l'autorité de certification approuvée en échange d'informations d'identification temporaires AWS . Il peut y avoir plusieurs points d'ancrage de confiance en un seul Compte AWS. Pour plus d'informations, consultez le modèle de IAM Roles Anywhere confiance. Le modèle de confiance définit comment les certificats sont validés et quels attributs de certificat sont requis pour une authentification réussie.

informations d’identification de sécurité temporaires

Les informations d'identification de sécurité temporaires fournissent un accès limité dans le temps aux AWS ressources, généralement de quelques minutes à plusieurs heures. Contrairement aux clés d'accès à long terme, ces informations d'identification expirent automatiquement. Cela réduit considérablement le risque de compromission des informations d'identification et simplifie la gestion des accès dans les systèmes distribués. Pour plus d'informations sur les informations d'identification temporaires, consultez la section Exiger que les charges de travail utilisent des informations d'identification temporaires avec des rôles IAM pour accéder aux AWS meilleures pratiques de la documentation IAM.

Autorisations à double couche dans IAM

IAM Roles Anywhere implémente un modèle d'autorisation à double couche en combinant des rôles et des profils IAM. Dans un profil, vous pouvez définir des politiques de session IAM qui limitent les autorisations créées pour une session. Un profil peut avoir de nombreux rôles IAM mais une seule politique de session. Le modèle d'autorisation à double couche fournit une sécurité renforcée en exigeant que les autorisations soient explicitement autorisées sur les deux couches avant que l'accès ne soit accordé. Les deux couches sont les suivantes :

  • La couche des rôles IAM définit les éléments suivants :

    • Politiques de confiance qui déterminent quelle entité peut assumer le rôle

    • Politiques d'autorisation qui spécifient les AWS ressources auxquelles le rôle peut accéder et les actions qu'il peut effectuer

    • Éléments conditionnels susceptibles de restreindre davantage l'accès en fonction de critères spécifiques

  • La couche de IAM Roles Anywhere profils effectue les opérations suivantes :

    • Définit les rôles IAM pouvant être assumés via IAM Roles Anywhere

    • Fournit des contrôles supplémentaires pour l'attribution des rôles

    • Agit comme un filtre d'autorisation, même si le rôle IAM lui-même permet un accès plus large

Par exemple, si un rôle IAM autorise l'accès à Amazon Simple Storage Service (Amazon S3) (Simple Storage Service) et Amazon DynamoDB mais que le profil autorise uniquement l'accès à Amazon S3, l'application ne peut accéder qu'aux ressources Amazon S3. Cette approche à double couche applique le principe du moindre privilège en exigeant une autorisation explicite dans les deux couches.

AWS Aide aux informations d'identification

En utilisant Credential Helper (GitHub) pour IAM Roles Anywhere, vous définissez via le AWS Command Line Interface (AWS CLI) l'ancre de confiance, le profil et le rôle que vous souhaitez utiliser pour autoriser l'application à accéder aux AWS ressources. Voici un exemple d'appel utilisant l'outil AWS Credential Helper :

./aws_signing_helper credential-process \--certificate <Path to certificate> \--private-key <Path to private key> \--trust-anchor-arn <Trust anchor ARN> \--profile-arn <Profile 1 ARN> \--role-arn <Role 1 ARN>

Cet outil est compatible avec les credential_process fonctionnalités disponibles dans toutes les langues SDKs. Lorsqu'elles sont utilisées avec un AWS SDK, ces informations d'identification sont automatiquement actualisées avant leur expiration, ce qui ne nécessite aucune implémentation supplémentaire pour le renouvellement des informations d'identification. Credential Helper gère le processus de création d'une signature avec le certificat et d'appel du point de terminaison pour obtenir les informations d'identification de session. Il renvoie ensuite les informations de sécurité temporaires au processus d'appel dans un format JSON standard.

Pour plus d'informations, voir Obtenir des informations d'identification de sécurité temporaires auprès de IAM Roles Anywhere.