Configuration de l'accès fédéré à Amazon Athena pour les utilisateurs de Microsoft AD FS à l'aide d'un client ODBC - Amazon Athena

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.

Configuration de l'accès fédéré à Amazon Athena pour les utilisateurs de Microsoft AD FS à l'aide d'un client ODBC

Pour configurer l'accès fédéré à Amazon Athena pour les utilisateurs de Microsoft Active Directory Federation Services (AD FS) à l'aide d'un client ODBC, vous devez d'abord établir la confiance entre AD FS et votre compte AWS. Une fois cette confiance établie, vos utilisateurs AD peuvent se fédérer enAWS utilisant leurs informations d'identification AD et obtenir les autorisations d'un rôle AWS Identity and Access Management (IAM) pour accéder à des ressources AWS telles que l'API Athena.

Pour créer cette confiance, vous ajoutez AD FS en tant que fournisseur SAML à votre Compte AWS et créez un rôle IAM que les utilisateurs fédérés peuvent assumer. Du côté d'AD FS, vous ajoutez en AWS tant que partie utilisatrice et vous rédigez des règles de revendication SAML pour envoyer les bons attributs d'utilisateur à AWS pour autorisation (en particulier, Athena et Amazon S3).

La configuration de l'accès AD FS à Athena implique les principales étapes suivantes :

1. Configuration d'un fournisseur et d'un rôle IAM SAML

2. Configuration d'AD FS

3. Création d'utilisateurs et de groupes Active Directory

4. Configuration de la connexion ODBC AD FS à Athena

1. Configuration d'un fournisseur et d'un rôle IAM SAML

Dans cette section, vous ajoutez AD FS en tant que fournisseur SAML à votre compte AWS et créez un rôle IAM que vos utilisateurs fédérés peuvent assumer.

Configurer un fournisseur SAML
  1. Connectez-vous à l’outil AWS Management Console, puis ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.

  2. Dans le panneau de navigation, sélectionnez Fournisseurs d'identité.

  3. Choisissez Ajouter un fournisseur.

  4. Pour Type de fournisseur, choisissez SAML.

    Choisissez SAML.
  5. Pour Provider name (Nom du fournisseur), saisissez adfs-saml-provider.

  6. Dans un navigateur, saisissez l'adresse suivante pour télécharger le fichier XML de fédération pour votre serveur AD FS. Pour effectuer cette étape, votre navigateur doit avoir accès au serveur AD FS.

    https://adfs-server-name/federationmetadata/2007-06/federationmetadata.xml
  7. Dans la console IAM, pour Metadata document (Document de métadonnées), sélectionnez Choose file (Choisir un fichier), puis téléchargez le fichier de métadonnées de fédération vers AWS.

  8. Pour terminer, sélectionnez Add provider (Ajouter un fournisseur).

Vous créez ensuite le rôle IAM que vos utilisateurs fédérés peuvent assumer.

Créer un rôle IAM pour les utilisateurs fédérés
  1. Dans le volet de navigation de la console IAM, sélectionnez Roles (Rôles).

  2. Sélectionnez Créer un rôle.

  3. Pour Trusted entity type (Type d'entité de confiance), sélectionnez SAML 2.0 Federation (Fédération SAML 2.0).

  4. Pour SAML 2.0-based provider (Fournisseur basé sur SAML 2.0), choisissez le fournisseur adfs-saml-provider que vous avez créé.

  5. Sélectionnez Autoriser l'accès programmatique et l'accès à la console de gestion AWS, puis sélectionnez Suivant.

    Sélection de SAML comme type d'entité de confiance.
  6. Sur la page Add permissions (Ajouter des autorisations), filtrez les politiques d'autorisations IAM dont vous avez besoin pour ce rôle, puis cochez les cases correspondantes. Ce tutoriel attache les politiques AmazonAthenaFullAccess et AmazonS3FullAccess.

    Attachement de la stratégie d'accès complet d'Athena au rôle.
    Attachement de la stratégie d'accès complet d'Amazon S3 au rôle.
  7. Choisissez Suivant.

  8. Sur la page Name, review, and create (Nommer, vérifier et créer), pour Role name Role name, saisissez un nom pour le rôle. Ce tutoriel utilise le nom adfs-data-access.

    À l'étape 1 : sélectionner les entités de confiance, le champ Principal doit être automatiquement renseigné avec "Federated:" "arn:aws:iam::account_id:saml-provider/adfs-saml-provider". Le champ Condition doit contenir "SAML:aud" et "https://signin.aws.amazon.com/saml".

    Entités de confiance JSON.

    L'étape 2 : ajouter des autorisations affiche les politiques que vous avez attachées au rôle.

    Liste des politiques attachées au rôle.
  9. Sélectionnez Créer un rôle. Un message de type bannière confirme la création du rôle.

  10. Sur la page Roles (Rôles), sélectionnez le rôle que vous venez de créer. La page récapitulative du rôle montre les politiques qui ont été attachées.

    Page récapitulative du rôle.

2. Configuration d'AD FS

Vous pouvez maintenant ajouter AWS en tant que partie utilisatrice et écrire des règles de revendication SAML afin d'envoyer les bons attributs d'utilisateur à AWS pour autorisation.

La fédération basée sur SAML comprend deux parties participantes : l'IdP (Active Directory) et la partie utilisatrice (AWS), qui est le service ou l'application qui utilise l'authentification à partir de l'IdP.

Pour configurer AD FS, vous devez d'abord ajouter une partie utilisatrice, puis configurer les règles de revendication SAML pour cette partie utilisatrice. AD FS utilise des règles de revendication pour former une assertion SAML qui est envoyée à une partie utilisatrice. L'assertion SAML indique que les informations concernant l'utilisateur AD sont vraies et que l'utilisateur a été authentifié.

Ajout d'une relation de confiance d'une partie utilisatrice

Pour ajouter une relation de confiance d'une partie utilisatrice à AD FS, vous devez utiliser le gestionnaire de serveur AD FS.

Ajouter une relation de confiance d'une partie utilisatrice dans AD FS
  1. Connectez-vous au serveur AD FS.

  2. Dans le menu Start (Démarrer), ouvrez Server Manager (Gestionnaire de serveur).

  3. Choisissez Tools (Outils), puis AD FS Management (Gestion d'AD FS).

    Choisissez Tools (Outils), AD FS Management (Gestion d'AD FS).
  4. Dans le volet de navigation, sous Trust Relationships (Relations de confiance), choisissez Relying Party Trusts (Relations de confiance de partie utilisatrice).

  5. Sous Actions, choisissez Add Relying Party Trust (Ajouter une relation de confiance d'une partie utilisatrice).

    Choisissez Add Relying Party Trust (Ajouter une relation de confiance d'une partie utilisatrice).
  6. Dans la page Assistant Ajout d'approbation de partie de confiance, choisissez Démarrer.

    Sélectionnez Démarrer.
  7. Sur l'écran Select Data Source (Sélectionner la source de données), sélectionnez Import data about the relying party published online or on a local network (Importer les données relatives à la partie utilisatrice publiées en ligne ou sur un réseau local).

  8. Pour Federation metadata address (host name or URL) (Adresse de métadonnées de fédération [nom d'hôte ou URL]), saisissez l'URL https://signin.aws.amazon.com/static/saml-metadata.xml.

  9. Choisissez Next (Suivant).

    Configuration de la source de données.
  10. Sur la page Specify Display Name (Spécifier le nom d'affichage), dans le champ Display name (Nom d'affichage), saisissez un nom d'affichage pour votre partie utilisatrice, puis cliquez sur Next (Suivant).

    Saisissez un nom d'affichage pour la partie utilisatrice.
  11. Sur la page Configure Multi-factor Authentication Now (Configurer l'authentification multifactorielle maintenant), ce tutoriel sélectionne I do not want to configure multi-factor authentication for this relying party trust at this time (Je ne veux pas configurer l'authentification multifactorielle pour cette partie utilisatrice en ce moment).

    Pour une sécurité accrue, nous vous recommandons de configurer une authentification multifactorielle afin de protéger vos ressources AWS. Parce qu'il utilise un exemple de jeu de données, ce tutoriel ne permet pas l'authentification multifactorielle.

    Configuration de l'authentification multifactorielle.
  12. Choisissez Suivant.

  13. Sur la page Choose Issuance Authorization Rules (Choisir les règles d'autorisation d'émission), sélectionnez Permit all users to access this relying party (Autoriser tous les utilisateurs à accéder à cette partie utilisatrice).

    Cette option permet à tous les utilisateurs d'Active Directory d'utiliser AD FS avec AWS en tant que partie utilisatrice. Vous devez tenir compte de vos besoins en matière de sécurité et adapter cette configuration en conséquence.

    Configuration de l'accès des utilisateurs à la partie utilisatrice.
  14. Choisissez Suivant.

  15. Sur la page Ready to Add Trust (Prêt à ajouter une relation de confiance), cliquez sur Next (Suivant) pour ajouter la relation de confiance de la partie utilisatrice à la base de données de la configuration AD FS.

    Choisissez Suivant.
  16. Sur la page Finish (Terminer), choisissez Close (Fermer).

    Choisissez Close (Fermer).

Configuration des règles de revendication SAML pour la partie utilisatrice

Dans cette tâche, vous allez créer deux ensembles de règles de revendication.

Le premier ensemble, les règles 1 à 4, contient les règles de revendication AD FS qui sont requises pour assumer un rôle IAM en fonction de l'appartenance à un groupe AD. Il s'agit des mêmes règles que vous créez si vous souhaitez établir un accès fédéré à la AWS Management Console.

Le second ensemble, les règles 5 à 6, concerne les règles de revendication requises pour le contrôle d'accès Athena.

Créer des règles de revendication AD FS
  1. Dans le volet de navigation de la console de gestion AD FS, choisissez Trust Relationships (Relations de confiance), Relying Party Trusts (Relations de confiance de partie utilisatrice).

  2. Trouvez la partie utilisatrice que vous avez créée dans la section précédente.

  3. Faites un clic droit sur la partie utilisatrice et choisissez Edit Claim Rules (Modifier les règles de revendication), ou choisissez Edit Claim Rules (Modifier les règles de revendication) dans le menu Actions.

    Choisissez Edit Claim Rules (Modifier les règles de revendication).
  4. Choisissez Add Rule (Ajouter une règle).

  5. Sur la page Configure Rule (Configurer une règle) de l'assistant d'ajout de règle de transformation, saisissez les informations suivantes pour créer la règle de revendication 1, puis choisissez Finish (Terminer).

    • Pour Claim Rule name (Nom de la règle de revendication), saisissez NameID.

    • Pour Rule template (Modèle de règle), utilisez Transform an Incoming Claim (Transformer une revendication entrante).

    • Pour Incoming claim type (Nom de la revendication entrante), choisissez Windows account name (Nom du compte Windows).

    • Pour Outgoing claim type (Nom de la revendication sortante), choisissez Name ID (ID nom).

    • Pour Format d'ID de nom sortant, choisissez Identifiant persistant.

    • Choisissez Pass through all claim values (Transférer toutes les valeurs de revendication).

    Créez la première règle de revendication.
  6. Choisissez Add Rule (Ajouter une règle), saisissez les informations suivantes pour créer la règle de revendication 2, puis choisissez Finish (Terminer).

    • Pour Claim rule name (Nom de la règle de revendication), saisissez RoleSessionName.

    • Pour Rule template (Modèle de règle), utilisez Send LDAP Attribute as Claims (Envoyer les attributs LDAP en tant que revendications).

    • Pour Attribute store (Magasin d'attributs), choisissez Active Directory.

    • Pour Mapping of LDAP attributes to outgoing claim types (Mappage des attributs LDAP aux types de revendications sortantes), ajoutez l'attribut E-Mail-Addresses. Pour Outgoing Claim Type (Type de revendication sortante), saisissez https://aws.amazon.com/SAML/Attributes/RoleSessionName.

    Créez la deuxième règle de revendication.
  7. Choisissez Add Rule (Ajouter une règle), saisissez les informations suivantes pour créer la règle de revendication 3, puis choisissez Finish (Terminer).

    • Pour Claim rule name (Nom de la règle de revendication), saisissez Get AD Groups.

    • Pour Rule template (Modèle de règle), utilisez Send Claims Using a Custom Rule (Envoyer des revendications à l'aide d'une règle personnalisée).

    • Pour Custom rule (Règle personnalisée), saisissez le code suivant :

      c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"]=> add(store = "Active Directory", types = ("http://temp/variable"), query = ";tokenGroups;{0}", param = c.Value);
      Créez la troisième règle de revendication.
  8. Choisissez Add Rule (Ajouter une règle). Saisissez les informations suivantes pour créer la règle de revendication 4, puis choisissez Finish (Terminer).

    • Pour Claim rule name (Nom de la règle de revendication), saisissez Role.

    • Pour Rule template (Modèle de règle), utilisez Send Claims Using a Custom Rule (Envoyer des revendications à l'aide d'une règle personnalisée).

    • Pour Custom rule (Règle personnalisée), saisissez le code suivant avec votre numéro de compte et le nom du fournisseur SAML que vous avez créé précédemment :

      c:[Type == "http://temp/variable", Value =~ "(?i)^aws-"]=> issue(Type = "https://aws.amazon.com/SAML/Attributes/Role", Value = RegExReplace(c.Value, "aws-", "arn:aws:iam::AWS_ACCOUNT_NUMBER:saml-provider/adfs-saml-provider,arn:aws:iam:: AWS_ACCOUNT_NUMBER:role/"));
    Créez la quatrième règle de revendication.

3. Création d'utilisateurs et de groupes Active Directory

Vous pouvez maintenant créer des utilisateurs AD qui accéderont à Athena, et des groupes AD dans lesquels les placer afin de pouvoir contrôler les niveaux d'accès par groupe. Après avoir créé des groupes AD qui classent les modèles d'accès aux données, vous ajoutez vos utilisateurs à ces groupes.

Créer des utilisateurs AD pour accéder à Athena
  1. Dans le tableau de bord Server Manager (Gestionnaire de serveur), choisissez Tools (Outils), puis choisissez Active Directory Users and Computers (Utilisateurs et ordinateurs Active Directory).

    Choisissez Tools (Outils), Active Directory Users and Computers (Utilisateurs et ordinateurs Active Directory).
  2. Dans le panneau de navigation, choisissez utilisateurs.

  3. Dans la barre d'outils Active Directory Users and Computers (Utilisateurs et ordinateurs Active Directory), choisissez l'option Create user (Créer un utilisateur).

    Choisissez Create user (Créer un utilisateur).
  4. Dans la boîte de dialogue New Object – User (Nouvel objet – Utilisateur), saisissez un nom dans les champs First name (Prénom), Last name (Nom de famille) et Full name (Nom complet). Ce tutoriel utilise Jane Doe.

    Entrez un nom d'utilisateur.
  5. Choisissez Suivant.

  6. Dans le Password (Mot de passe), saisissez un mot de passe, puis saisissez-le à nouveau pour le confirmer.

    Pour simplifier, ce tutoriel désélectionne l'option User must change password at next sign on (L'utilisateur doit changer son mot de passe à la prochaine ouverture de session). Dans des scénarios réels, vous devez demander aux utilisateurs nouvellement créés de changer leur mot de passe.

    Saisissez un mot de passe.
  7. Choisissez Suivant.

  8. Choisissez Finish (Terminer).

    Choisissez Finish (Terminer).
  9. Dans Active Directory Users and Computers (Utilisateurs et ordinateurs Active Directory), choisissez le nom de l'utilisateur.

  10. Dans la boîte de dialogue Properties (Propriétés) de l'utilisateur, pour E-mail, saisissez une adresse e-mail. Ce tutoriel utilise jane@example.com.

    Entrez une adresse e-mail.
  11. Sélectionnez OK.

Création de groupes AD pour représenter les modèles d'accès aux données

Vous pouvez créer des groupes AD dont les membres assument le rôle IAM adfs-data-access lorsqu'ils se connectent à AWS. L'exemple suivant crée un groupe AD appelé aws-adfs-data-access.

Créer un groupe
  1. Dans le tableau de bord Server Manager (Gestionnaire de serveur), dans le menu Tools (Outils), choisissez Active Directory Users and Computers (Utilisateurs et ordinateurs Active Directory).

  2. Dans la barre d'outils, choisissez l'option Create new group (Créer un nouveau groupe).

    Choisissez Create new group (Créer un nouveau groupe).
  3. Dans la boîte de dialogue New Object – Group (Nouvel objet – Groupe), saisissez les informations suivantes :

    • Pour Group name (Nom du groupe), saisissez aws-adfs-data-access.

    • Pour Group scope (Étendue du groupe), sélectionnez Global.

    • Pour Group type (Type de groupe), sélectionnez Security (Sécurité).

    Création d'un groupe de sécurité global dans AD.
  4. Sélectionnez OK.

Ajout des utilisateurs AD aux groupes appropriés

Maintenant que vous avez créé un utilisateur AD et un groupe AD, vous pouvez ajouter l'utilisateur au groupe.

Ajouter un utilisateur AD à un groupe AD
  1. Dans le tableau de bord Server Manager (Gestionnaire de serveur), dans le menu Tools (Outils), choisissez Active Directory Users and Computers (Utilisateurs et ordinateurs Active Directory).

  2. Pour First name (Prénom) et Last name (Nom de famille), choisissez un utilisateur (par exemple, Jane Doe).

  3. Dans la boîte de dialogue Properties (Propriétés) de l'utilisateur, dans l'onglet Member Of (Membre de), choisissez Add (Ajouter).

    Choisissez Ajouter.
  4. Ajoutez un ou plusieurs groupes AD FS en fonction de vos besoins. Ce tutoriel ajoute le groupe aws-adfs-data-access.

  5. Dans la boîte de dialogue Select Groups (Sélectionner les groupes), pour Enter the object names to select (Saisir les noms d'objets à sélectionner), saisissez le nom du groupe AD FS que vous avez créé (par exemple, aws-adfs-data-access), puis choisissez Check Names (Vérifier les noms).

    Choisissez Check Names (Vérifier les noms).
  6. Sélectionnez OK.

    Dans la boîte de dialogue Properties (Propriétés) de l'utilisateur, le nom du groupe AD apparaît dans la liste Member of (Membre de).

    Groupe AD ajouté aux propriétés de l'utilisateur.
  7. Choisissez Apply (Appliquer), puis OK.

4. Configuration de la connexion ODBC AD FS à Athena

Après avoir créé vos utilisateurs et groupes AD, vous pouvez utiliser le programme Sources de données ODBC de Windows pour configurer votre connexion ODBC Athena pour AD FS.

Configurer la connexion ODBC AD FS à Athena
  1. Installez le pilote ODBC pour Athena. Pour les liens de téléchargement, consultez Connexion à Amazon Athena avec le pilote ODBC.

  2. Dans Windows, choisissez Démarrer, Sources de données ODBC.

  3. Dans le programme Administrateur de source de données ODBC, choisissez Ajouter.

    Choisissez Add (Ajouter) pour ajouter une source de données ODBC.
  4. Dans la boîte de dialogue Create New Data Source (Créer une nouvelle source de données), choisissez Simba Athena ODBC Driver (Pilote ODBC Simba Athena), puis Finish (Terminer).

    Choisissez Simba Athena ODBC Driver (Pilote ODBC Simba Athena).
  5. Dans la boite de dialogue Simba Athena ODBC Driver DSN Setup (Configuration DSN du pilote ODBC Simba Athena), saisissez les valeurs suivantes :

    • Pour Data Source Name (Nom de la source de données), saisissez un nom pour votre source de données (par exemple, Athena-odbc-test).

    • Pour Description, saisissez la description de votre source de données.

    • Pour Région AWS, saisissez la Région AWS que vous utilisez (par exemple us-west-1).

    • Pour Emplacement de sortie S3, saisissez le chemin Amazon S3 où vous souhaitez stocker votre sortie.

    Saisie de valeurs pour Simba Athena ODBC Driver DSN Setup (Configuration DSN du pilote ODBC Simba Athena).
  6. Choisissez Options d'authentification.

  7. Dans la boite de dialogue Authentication Options (Options d'authentification), spécifiez les valeurs suivantes :

    • Pour Authentication Type (Type d'authentification), choisissez ADFS.

    • Pour User (Utilisateur), saisissez l'adresse e-mail de l'utilisateur (par exemple, jane@example.com).

    • Pour Password (Mot de passe), saisissez le mot de passe ADFS de l'utilisateur.

    • Pour IdP Host (Hôte IdP), saisissez le nom du serveur AD FS (par exemple, adfs.example.com).

    • Pour IdP Port (Port IdP), utilisez la valeur par défaut 443.

    • Sélectionnez l'option SSL Insecure (SSL non sécurisé).

    Configuration des options d'authentification.
  8. Choisissez OK pour fermer les Authentication Options (Options d'authentification).

  9. Choisissez Test (Tester) pour tester la connexion, ou OK pour terminer.