Tutoriel : Intégration de l’authentification unique Microsoft Entra à AWS Single-Account Access

Dans ce tutoriel, vous allez découvrir comment intégrer AWS Single-Account Access à Microsoft Entra ID. Quand vous intégrez AWS Single-Account Access à Microsoft Entra ID, vous pouvez :

  • Contrôlez dans Microsoft Entra ID qui a accès à compte unique AWS.
  • Permettre à vos utilisateurs de se connecter automatiquement à AWS Single-Account Access avec leur compte Microsoft Entra.
  • Gérer vos comptes à partir d’un emplacement central.

Utilisez les informations ci-dessous pour prendre une décision concernant l’utilisation des applications AWS Single Sign-On et AWS Single-Account Access dans la galerie d’applications Microsoft Entra.

AWS Single Sign-On

AWS Single Sign-On a été ajoutée à la galerie d’applications Microsoft Entra en février 2021. Elle facilite la gestion de l’accès de manière centralisée sur plusieurs comptes AWS et applications AWS, avec la connexion via Microsoft Entra ID. Fédérez une seule fois Microsoft Entra ID avec l’authentification unique AWS et utilisez l’authentification unique AWS pour gérer les autorisations sur l’ensemble de vos comptes AWS à partir d’un emplacement unique. L’authentification unique AWS provisionne automatiquement les autorisations et les maintient à jour lorsque vous mettez à jour des stratégies et des attributions d’accès. Les utilisateurs finaux peuvent s’authentifier à l’aide de leurs informations d’identification Microsoft Entra pour accéder à la console AWS, à l’interface de ligne de commande et aux applications intégrées d’authentification unique AWS.

AWS Single-Account Access

L’application AWS Single-Account Access a été utilisée par les clients au cours des dernières années et vous permet de fédérer Microsoft Entra ID sur un seul compte AWS et d’utiliser Microsoft Entra ID pour gérer l’accès aux rôles AWS IAM. Les administrateurs AWS IAM définissent des rôles et des stratégies dans chaque compte AWS. Pour chaque compte AWS, les administrateurs Microsoft Entra se fédèrent à AWS IAM, attribuent des utilisateurs ou des groupes au compte et configurent Microsoft Entra ID pour envoyer des assertions qui autorisent l’accès aux rôles.

Fonction AWS Single Sign-On AWS Single-Account Access
Accès conditionnel Prise en charge d’une seule stratégie d’accès conditionnel pour tous les comptes AWS. Prise en charge d’une seule stratégie d’accès conditionnel pour l’ensemble des comptes ou des stratégies personnalisées par compte.
Accès à l’interface CLI Prise en charge Prise en charge
Privileged Identity Management Pris en charge Non pris en charge
Centraliser la gestion des comptes Centralisez la gestion des comptes dans AWS. Centraliser la gestion des comptes dans Microsoft Entra ID (nécessite probablement une application d’entreprise Microsoft Entra par compte).
Certificat SAML Certificat unique Certificats séparés par application/compte

Architecture AWS Single-Account Access

Capture d’écran montrant la relation entre Microsoft Entra ID et AWS.

Vous pouvez configurer plusieurs identificateurs pour plusieurs instances. Par exemple :

  • https://signin.aws.amazon.com/saml#1

  • https://signin.aws.amazon.com/saml#2

Avec ces valeurs, Microsoft Entra ID supprime la valeur de # et envoie la valeur correcte https://signin.aws.amazon.com/saml en tant qu’URL d’audience dans le jeton SAML.

Nous vous recommandons cette approche pour les raisons suivantes :

  • Chaque application vous fournit un certificat X509 unique. Chaque instance d’une instance de l’application AWS peut alors avoir une date d’expiration de certificat différente que vous pouvez gérer en fonction de chaque compte AWS. La substitution de certificat globale est plus aisée dans ce cas.

  • Vous pouvez activer l’attribution d’utilisateurs avec une application AWS dans Microsoft Entra ID, puis notre service extrait tous les rôles de ce compte AWS. Vous n’êtes pas obligé d’ajouter ni de mettre à jour manuellement les rôles AWS sur l’application.

  • Vous pouvez attribuer le propriétaire de l’application individuellement pour l’application. Cette personne peut gérer l’application directement dans Microsoft Entra ID.

Remarque

Veillez à utiliser uniquement une application de la galerie.

Prérequis

Pour commencer, vous devez disposer de ce qui suit :

  • Un abonnement Microsoft Entra. Si vous ne disposez d’aucun abonnement, vous pouvez obtenir un compte gratuit.
  • Un abonnement AWS IAM avec IdP.
  • Outre l'administrateur d'applications cloud, l'administrateur d'applications peut également ajouter ou gérer des applications dans Microsoft Entra ID. Pour plus d’informations, voir Rôles intégrés Azure.

Remarque

Les rôles ne doivent pas être modifiés manuellement dans Microsoft Entra ID lors de l’importation des rôles.

Description du scénario

Dans ce tutoriel, vous configurez et testez Microsoft Entra SSO dans un environnement de test.

  • AWS Single-Account Access prend en charge l’authentification unique lancée par le fournisseur de services et le fournisseur d’identité.

Notes

L’identificateur de cette application étant une valeur de chaîne fixe, une seule instance peut être configurée dans un locataire.

Pour configurer l’intégration d’AWS Single-Account Access à Microsoft Entra ID, vous devez ajouter AWS Single-Account Access à partir de la galerie à votre liste d’applications SaaS managées.

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.
  2. Accédez à Identité>Applications>Applications d’entreprise>Nouvelle application.
  3. Dans la section Ajouter à partir de la galerie, tapez AWS Single-Account Access dans la zone de recherche.
  4. Sélectionnez AWS Single-Account Access dans le volet de résultats, puis ajoutez l’application. Patientez quelques secondes pendant que l’application est ajoutée à votre locataire.

Vous pouvez également utiliser l’assistant Entreprise App Configuration. Dans cet Assistant, vous pouvez ajouter une application à votre locataire, ajouter des utilisateurs/groupes à l’application, attribuer des rôles, mais aussi parcourir les étapes de configuration de l’authentification unique. En savoir plus sur les assistants Microsoft 365.

Vous pouvez également utiliser l’assistant Entreprise App Configuration. Dans cet Assistant, vous pouvez ajouter une application à votre locataire, ajouter des utilisateurs/groupes à l’application, attribuer des rôles, mais aussi parcourir les étapes de configuration de l’authentification unique. Vous pouvez en apprendre davantage sur les assistants O365 ici.

Configurer et tester l’authentification unique Microsoft Entra pour AWS Single-Account Access

Configurez et testez l’authentification unique Microsoft Entra avec AWS Single-Account Access à l’aide d’un utilisateur de test appelé B.Simon. Pour que l’authentification unique fonctionne, vous devez établir un lien entre un utilisateur Microsoft Entra et l’utilisateur AWS Single-Account Access associé.

Pour configurer et tester l’authentification unique Microsoft Entra avec AWS Single-Account Access, effectuez les étapes suivantes :

  1. Configurez l’authentification unique Microsoft Entra pour permettre à vos utilisateurs d’utiliser cette fonctionnalité.
    1. Créez un utilisateur de test Microsoft Entra pour tester l’authentification unique Microsoft Entra avec B.Simon.
    2. Attribuer l’utilisateur test Microsoft Entra – pour permettre à B.Simon d’utiliser l’authentification unique Microsoft Entra.
  2. Configurer l’authentification unique AWS Single-Account Access pour configurer les paramètres de l’authentification unique côté application.
    1. Créer un utilisateur de test AWS Single-Account Access pour avoir un équivalent de B.Simon dans AWS Single-Account Access associé à la représentation Microsoft Entra de l’utilisateur.
    2. Comment configurer le provisionnement des rôles dans AWS Single-Account Access
  3. Tester l’authentification unique pour vérifier si la configuration fonctionne.

Configurer Microsoft Entra SSO

Effectuez ces étapes pour activer l’authentification unique Microsoft Entra.

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.

  2. Accédez à Identité>Applications>Applications d’entreprise>AWS Single-Account Access>Authentification unique.

  3. Dans la page Sélectionner une méthode d’authentification unique, sélectionnez SAML.

  4. Dans la page Configurer l’authentification unique avec SAML, cliquez sur l’icône de crayon de Configuration SAML de base afin de modifier les paramètres.

    Capture d’écran montrant Modifier la configuration SAML de base.

  5. Dans la section Configuration SAML de base, mettez à jour les champs Identificateur (ID d’entité) et URL de réponse avec la même valeur par défaut : https://signin.aws.amazon.com/saml. Vous devez sélectionner Enregistrer pour enregistrer les changements de configuration.

  6. L’application AWS s’attend à recevoir les assertions SAML dans un format spécifique, ce qui vous oblige à ajouter des mappages d’attributs personnalisés à votre configuration des attributs de jetons SAML. La capture d’écran suivante montre la liste des attributs par défaut.

    Capture d’écran montrant les attributs par défaut.

  7. En plus de ce qui précède, l’application AWS s’attend à ce que quelques attributs supplémentaires (présentés ci-dessous) soient repassés dans la réponse SAML. Ces attributs sont également préremplis, mais vous pouvez les examiner pour voir s’ils répondent à vos besoins.

    Nom Attribut source Espace de noms
    RoleSessionName user.userprincipalname https://aws.amazon.com/SAML/Attributes
    Role user.assignedroles https://aws.amazon.com/SAML/Attributes
    SessionDuration user.sessionduration https://aws.amazon.com/SAML/Attributes

    Remarque

    AWS attend des rôles pour les utilisateurs affectés à l’application. Veuillez configurer ces rôles dans Microsoft Entra ID afin que les utilisateurs puissent se voir attribuer les rôles appropriés. Pour comprendre comment configurer les rôles dans Microsoft Entra ID, voir ici

  8. Dans la page Configurer l’authentification unique avec SAML, dans la section Certificat de signature SAML (Étape 3), sélectionnez Ajouter un certificat.

    Capture d’écran montrant Créer un certificat SAML.

  9. Générez un nouveau certificat de signature SAML, puis sélectionnez Nouveau certificat. Entrez une adresse e-mail pour les notifications de certificat.

    Capture d’écran montrant Nouveau certificat SAML.

  10. (Facultatif) Vous pouvez sélectionner Créer un certificat actif.

  11. Dans la section Certificat de signature SAML, recherchez XML de métadonnées de fédération, puis sélectionnez Télécharger pour télécharger le certificat et l’enregistrer sur votre ordinateur.

  12. Dans la section Configurer AWS Single-Account Access, copiez la ou les URL appropriées en fonction de vos besoins.

    Capture d’écran montrant Copier les URL de configuration.

Créer un utilisateur de test Microsoft Entra

Dans cette section, vous créez une utilisatrice test appelée B.Simon.

  1. Connectez-vous au Centre d’administration de Microsoft Entra en tant qu’Administrateur de l’utilisateur.
  2. Accédez à Identité>Utilisateurs>Tous les utilisateurs.
  3. Sélectionnez Nouvel utilisateur>Créer un utilisateur dans la partie supérieure de l’écran.
  4. Dans les propriétés Utilisateur, effectuez les étapes suivantes :
    1. Dans le champ Nom d’affichage, entrez B.Simon.
    2. Dans le champ Nom d’utilisateur principal, entrez username@companydomain.extension. Par exemple : B.Simon@contoso.com.
    3. Cochez la case Afficher le mot de passe, puis notez la valeur affichée dans le champ Mot de passe.
    4. Sélectionnez Revoir + créer.
  5. Sélectionnez Create (Créer).

Attribuer l’utilisateur test Microsoft Entra

Dans cette section, vous allez permettre à B.Simon d’utiliser l’authentification unique accordant l’accès à AWS Single-Account Access.

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.
  2. Accédez à Identité>Applications>Applications d’entreprise>AWS Single-Account Access.
  3. Dans la page de présentation de l’application, sélectionnez Utilisateurs et groupes.
  4. Sélectionnez Ajouter un utilisateur/groupe, puis Utilisateurs et groupes dans la boîte de dialogue Ajouter une attribution.
    1. Dans la boîte de dialogue Utilisateurs et groupes, sélectionnez B. Simon dans la liste Utilisateurs, puis cliquez sur le bouton Sélectionner au bas de l’écran.
    2. Si vous vous attendez à ce qu’un rôle soit attribué aux utilisateurs, vous pouvez le sélectionner dans la liste déroulante Sélectionner un rôle. Si aucun rôle n’a été configuré pour cette application, vous voyez le rôle « Accès par défaut » sélectionné.
    3. Dans la boîte de dialogue Ajouter une attribution, cliquez sur le bouton Attribuer.

Configurer l’authentification unique AWS Single-Account Access

  1. Dans une autre fenêtre de navigateur, connectez-vous à votre site d’entreprise AWS en tant qu’administrateur.

  2. Dans la page d’accueil AWS, recherchez IAM et cliquez dessus.

    Capture d’écran de la page des services AWS, avec mise en évidence de l’option IAM.

  3. Accédez à Gestion de l’accès ->Fournisseurs d’identité, et cliquez sur le bouton Ajouter un fournisseur.

    Capture d’écran de la page IAM, avec Fournisseurs d’identité et Créer un fournisseur mis en évidence.

  4. Dans la page Ajouter un fournisseur d’identité, effectuez les étapes suivantes :

    Capture d’écran de la configuration d’un fournisseur.

    a. Pour Type de fournisseur, sélectionnez SAML.

    b. Dans Nom du fournisseur, tapez un nom de fournisseur (par exemple : WAAD).

    c. Pour télécharger votre fichier de métadonnées, sélectionnez Choisir fichier.

    d. Cliquez sur Ajouter un fournisseur.

  5. Sélectionnez Roles>Create role.

    Capture d’écran de la page Rôles.

  6. Dans la page Create role (Créer un rôle), effectuez les étapes suivantes :

    Capture d’écran de la page Créer un rôle.

    a. Choisissez Type d’entité approuvé et sélectionnez Fédération SAML 2.0.

    b. Sous Fournisseur basé sur SAML 2.0, sélectionnez le fournisseur SAML que vous avez déjà créé (par exemple : WAAD).

    c. Sélectionnez Allow programmatic and AWS Management Console access (Autoriser l’accès par programme à AWS Management Console).

    d. Sélectionnez Suivant.

  7. Dans la boîte de dialogue Stratégies d’autorisations, attachez la stratégie appropriée pour votre organisation. Sélectionnez ensuite Suivant.

    Capture d’écran de la boîte de dialogue Attacher des stratégies d’autorisations.

  8. Dans la boîte de dialogue Review (Vérification), effectuez les étapes suivantes :

    Capture d’écran de la boîte de dialogue Vérifier.

    a. Dans Role name (Nom du rôle), entrez votre nom de rôle.

    b. Dans Description, entrez la description du rôle.

    c. Sélectionnez Create role.

    d. Créez autant de rôles que nécessaire et associez-les au fournisseur d’identité.

  9. Utilisez les informations d’identification du compte de service AWS pour récupérer les rôles depuis le compte AWS dans la section d’attribution d’utilisateurs de Microsoft Entra. Pour ce faire, ouvrez la page d’accueil de la console AWS.

  10. Dans la section IAM, sélectionnez Stratégies et cliquez sur Créer une stratégie.

    Capture d’écran de la section IAM, avec Stratégies mis en évidence.

  11. Créez votre propre stratégie pour extraire tous les rôles à partir de comptes AWS.

    Capture d’écran de la page Créer une stratégie, avec JSON mis en évidence.

    a. Dans Create policy, sélectionnez l’onglet JSON.

    b. Dans le document de stratégie, ajoutez le code JSON suivant :

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

    c. Cliquez sur Suivant : étiquettes.

  12. Vous pouvez également ajouter les étiquettes requises dans la page ci-dessous et cliquer sur Suivant : Vérifier.

    Capture d’écran de la page Créer une étiquette de stratégie.

  13. Définissez la nouvelle stratégie.

    Capture d’écran de la page Créer une stratégie, avec mise en évidence des champs Nom et Description.

    a. Pour Name, entrez AzureAD_SSOUserRole_Policy.

    b. Pour Description, entrez This policy will allow to fetch the roles from AWS accounts (Cette stratégie permettra de récupérer les rôles à partir de comptes AWS).

    c. Sélectionnez Créer une stratégie.

  14. Créez un compte d’utilisateur dans le service IAM d’AWS.

    a. Dans la console IAM AWS, sélectionnez Utilisateurs et cliquez sur Ajouter des utilisateurs.

    Capture d’écran de la console IAM d’AWS, avec Utilisateurs mis en évidence.

    b. Dans la section Spécifier les détails de l’utilisateur, entrez le nom d’utilisateur AzureADRoleManager et sélectionnez Suivant.

    Capture d’écran de la page Ajouter un utilisateur, avec Nom de l’utilisateur et Type d’accès mis en évidence.

    c. Créez une stratégie pour cet utilisateur.

    Capture d’écran montrant la page Ajouter un utilisateur, où vous pouvez créer une stratégie pour l’utilisateur.

    d. Sélectionnez Attach existing policies directly (Attacher directement les stratégies existantes).

    e. Recherchez la stratégie nouvellement créée dans la section du filtre AzureAD_SSOUserRole_Policy (Stratégie_RôleUtilisateurAuthentificationUnique_AzureAD).

    f. Sélectionnez la stratégie, puis Suivant.

  15. Passez en revue vos choix et sélectionnez Créer l’utilisateur.

Remarque : assurez-vous de créer et de télécharger la clé d’accès tierce pour cet utilisateur. Cette clé est utilisée dans la section d’attribution d’utilisateurs de Microsoft Entra pour extraire les rôles à partir de la console AWS.

  1. Pour télécharger les informations d’identification utilisateur d’un utilisateur, activez l’accès à la console sous l’onglet Informations d’identification de sécurité.

    Capture d’écran montrant les informations d’identification de sécurité.

  2. Dans la section d’attribution d’utilisateurs de Microsoft Entra, entrez ces informations d’identification pour extraire les rôles à partir de la console AWS.

    Capture d’écran montrant le téléchargement des informations d’identification utilisateur.

Notes

AWS possède un ensemble d’autorisations/de limites requises pour configurer l’authentification unique AWS. Pour plus d’informations sur les limites AWS, veuillez vous reporter à cette page.

Comment configurer le provisionnement des rôles dans AWS Single-Account Access

  1. Dans le portail de gestion Microsoft Entra, dans l’application AWS, accédez à Provisioning (Provisionnement).

    Capture d’écran de l’application AWS, avec Provisionnement mis en évidence.

Remarque : le nom d’utilisateur et le mot de passe renvoyés lors de l’activation de l’accès à la console ne sont pas les valeurs nécessaires pour les champs clé secrète client et jeton secret. Au lieu de cela, créez une clé d’accès tierce pour cette étape.

  1. Entrez la clé d’accès et le secret dans les champs clientsecret (secret client) et Secret Token (Jeton secret) respectivement.

    Capture d’écran de la boîte de dialogue Informations d’identification administrateur.

    a. Entrez la clé d’accès utilisateur AWS dans le champ clientsecret.

    b. Entrez le secret d’utilisateur AWS dans le champ Jeton secret.

    c. Sélectionnez Test Connection (Tester la connexion).

    d. Enregistrez le paramètre en sélectionnant Save (Enregistrer).

  2. Dans la section Settings (Paramètres), pour Provisioning Status (État du provisionnement), sélectionnez On (Activé). Ensuite, sélectionnez Enregistrer.

    Capture d’écran de la section Paramètres, avec Activé mis en évidence.

Remarque

Le service de provisionnement importe les rôles uniquement d’AWS vers Microsoft Entra ID. Ce service ne provisionne pas les utilisateurs et les groupes de Microsoft Entra ID dans AWS.

Remarque

Après avoir enregistré les informations d’identification de provisionnement, vous devez attendre que le cycle de synchronisation initial s’exécute. La synchronisation prend environ 40 minutes. Vous pouvez voir le statut en bas de la page Mise en service, sous Statut actuel.

Créer un utilisateur de test AWS Single-Account Access

L’objectif de cette section est de créer un utilisateur appelé B.Simon dans AWS Single-Account Access. AWS Single-Account Access ne nécessitant pas de création d’utilisateur dans son système pour l’authentification unique, vous n’avez aucune action à accomplir ici.

Tester l’authentification unique (SSO)

Dans cette section, vous testez votre configuration d’authentification unique Microsoft Entra avec les options suivantes.

Lancée par le fournisseur de services :

  • Cliquez sur Tester cette application. Vous êtes alors redirigé vers l’URL de connexion à AWS Single-Account Access où vous pouvez lancer le flux de connexion.

  • Accédez directement à l’URL de connexion à AWS Single-Account Access pour lancer le flux de connexion.

Lancée par le fournisseur d’identité :

  • Cliquez sur Tester cette application. Vous êtes alors automatiquement connecté à l’instance AWS Single-Account Access pour laquelle vous avez configuré l’authentification unique.

Vous pouvez aussi utiliser Mes applications de Microsoft pour tester l’application dans n’importe quel mode. Si, quand vous cliquez sur la vignette AWS Single-Account Access dans Mes applications, le mode Fournisseur de services est configuré, vous êtes redirigé vers la page de connexion de l’application pour lancer le flux de connexion ; s’il s’agit du mode Fournisseur d’identité, vous êtes automatiquement connecté à l’instance d’AWS Single-Account Access pour laquelle vous avez configuré l’authentification unique. Pour plus d’informations sur Mes applications, consultez Présentation de Mes applications.

Problèmes connus

  • L’intégration de l’approvisionnement d’AWS Single-Account Access ne peut pas être utilisée dans les régions d’AWS Chine.

  • Dans la section Provisionnement, la sous-section Mappages affiche un message « Chargement en cours... » et n’affiche jamais les mappages d’attributs. Le seul workflow de provisionnement pris en charge aujourd’hui est l’importation des rôles à partir d’AWS dans Microsoft Entra ID pour la sélection lors de l’affectation d’un groupe ou utilisateur. Pour cela, les mappages d’attributs sont prédéterminés et ne sont pas configurables.

  • La section Provisionnement prend uniquement en charge l’entrée d’un ensemble d’informations d’identification pour un locataire AWS à la fois. Tous les rôles importés sont écrits dans la propriété appRoles de l’objet servicePrincipal de Microsoft Entra ID pour le locataire AWS.

    Plusieurs locataires AWS (représentés par servicePrincipals) peuvent être ajoutés à Microsoft Entra ID à partir de la galerie à des fins de provisionnement. Toutefois, il existe un problème connu, lié à l’impossibilité d’écrire automatiquement tous les rôles importés à partir des différents servicePrincipals AWS utilisés pour le provisionnement dans le servicePrincipal unique utilisé pour l’authentification unique.

    En guise de solution de contournement, vous pouvez utiliser l’API Microsoft Graph pour extraire tous les appRoles importés dans chaque servicePrincipal AWS où le provisionnement est configuré. Vous pouvez ensuite ajouter ces chaînes de rôle au servicePrincipal AWS où l’authentification unique est configurée.

  • Les rôles doivent satisfaire aux exigences suivantes pour pouvoir être importés à partir d’AWS dans Microsoft Entra ID :

    • Les rôles doivent avoir un seul fournisseur SAML défini dans AWS
    • La longueur combinée du Nom de ressource Amazon (ARN) du rôle et de l’ARN du fournisseur SAML associé doit être inférieure à 240 caractères.

Journal des modifications

  • 12/01/2020 : la taille limite des rôles a été portée à 239 caractères (contre 119 auparavant).

Étapes suivantes

Après avoir configuré AWS Single-Account Access, vous pouvez appliquer le contrôle de session, qui protège contre l’exfiltration et l’infiltration des données sensibles de votre organisation en temps réel. Le contrôle de session est étendu à partir de l’accès conditionnel. Découvrez comment appliquer un contrôle de session avec Microsoft Defender for Cloud Apps.