Configurez l'authentification du SDK avec AWS - AWS SDK for .NET

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.

Configurez l'authentification du SDK avec AWS

Vous devez définir la manière dont votre code est authentifié auprès d’AWS lors du développement avec les Services AWS. Vous pouvez configurer l'accès programmatique aux ressources AWS de différentes manières, en fonction de l'environnement et de l'accès AWS dont vous disposez.

Pour connaître les différentes méthodes d'authentification pour le SDK, consultez la section Authentification et accès dans le Guide de référence AWS des SDK et des outils.

Cette rubrique part du principe qu'un nouvel utilisateur procède à un développement en local, qu'il n'a pas reçu de méthode d'authentification de la part de son employeur et qu'il utilisera AWS IAM Identity Center pour obtenir des informations d'identification temporaires. Si votre environnement ne répond pas à ces hypothèses, il est possible que certaines informations de cette rubrique ne s'appliquent pas à vous ou que certaines informations vous aient déjà été communiquées.

La configuration de cet environnement nécessite plusieurs étapes, qui sont résumées comme suit :

Activation et configuration d’IAM Identity Center

Pour utiliser IAM Identity Center, il doit d'abord être activé et configuré. Pour en savoir plus sur la procédure à suivre pour le SDK, consultez l'étape 1 de la rubrique consacrée à l'authentification IAM Identity Center dans le Guide de référence AWSdes SDK et des outils. Suivez particulièrement toutes les instructions nécessaires dans I do not have established access through IAM Identity Center.

Configurez le SDK pour utiliser IAM Identity Center.

Les informations relatives à la configuration du SDK pour utiliser IAM Identity Center se trouvent à l'étape 2 de la rubrique consacrée à l'authentification IAM Identity Center dans le Guide de référence AWSdes SDK et des outils. Une fois cette configuration terminée, votre système doit contenir les éléments suivants :

  • AWS CLI, que vous utilisez pour démarrer une session de portail d'accès AWS avant d'exécuter votre application.

  • Le AWS config fichier partagé qui contient un [default]profil avec un ensemble de valeurs de configuration pouvant être référencées à partir du SDK. Pour connaître l'emplacement de ce fichier, consultez Location of the shared files dans le manuel AWS SDKs and Tools Reference Guide. AWS SDK for .NETUtilise le fournisseur de jetons SSO du profil pour obtenir des informations d'identification avant d'envoyer des demandes àAWS. La valeur sso_role_name, qui est un rôle IAM connecté à un ensemble d'autorisations IAM Identity Center, doit autoriser l'accès aux Services AWS utilisés dans votre application.

    L’exemple de fichier config suivant illustre un profil par défaut configuré avec le fournisseur de jetons SSO. Le paramètre sso_session du profil fait référence à la section sso-session nommée. La section sso-session contient les paramètres permettant de lancer une session de portail d'accès AWS.

    [default] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://provided-domain.awsapps.com/start sso_registration_scopes = sso:account:access
Important

Si vous l'utilisez AWS IAM Identity Center pour l'authentification, votre application doit référencer les NuGet packages suivants pour que la résolution SSO puisse fonctionner :

  • AWSSDK.SSO

  • AWSSDK.SSOOIDC

Le fait de ne pas référencer ces packages entraînera une exception d'exécution.

Démarrage d’une session de portail d'accès AWS

Avant d'exécuter une application qui y accèdeServices AWS, vous avez besoin d'une session de portail d'AWSaccès active pour que le SDK utilise l'authentification IAM Identity Center pour résoudre les informations d'identification. En fonction de la durée de session que vous avez configurée, votre accès finira par expirer et le SDK rencontrera une erreur d'authentification. Pour vous connecter au portail d'accès AWS, exécutez la commande suivante dans AWS CLI.

aws sso login

Étant donné que vous disposez d’une configuration de profil par défaut, il n'est pas nécessaire d'appeler la commande avec l’option --profile. Si la configuration de votre fournisseur de jetons SSO utilise un profil nommé, la commande est aws sso login --profile named-profile.

Pour vérifier si vous avez déjà une session active, exécutez la commande AWS CLI suivante.

aws sts get-caller-identity

La réponse à cette commande doit indiquer le compte IAM Identity Center et l'ensemble d'autorisations configurés dans le fichier partagé config.

Note

Si vous disposez déjà d'une session de portail d’accès AWS active et que vous exécutez aws sso login, il ne vous sera pas demandé de fournir des informations d'identification.

Le processus de connexion peut vous demander d'autoriser AWS CLI à accéder à vos données. Étant donné qu’AWS CLI repose sur le kit SDK pour Python, les messages d'autorisation peuvent contenir des variantes du nom botocore.

Informations supplémentaires

  • Pour plus d'informations sur l'utilisation d'IAM Identity Center et du SSO dans un environnement de développement, consultez Authentification unique la Auth avancée section. Ces informations incluent des méthodes alternatives et plus avancées, ainsi que des didacticiels qui vous montrent comment utiliser ces méthodes.

  • Pour plus d'options d'authentification pour le SDK, telles que l'utilisation de profils et de variables d'environnement, consultez le chapitre sur la configuration du Guide de référence AWS des SDK et des outils.

  • Pour en savoir plus sur les bonnes pratiques, consultez Bonnes pratiques de sécurité dans IAM dans le Guide de l'utilisateur IAM.

  • Pour créer des informations d'identification AWS à court terme, consultez la section Informations d'identification de sécurité temporaires dans IAM dans le Guide de l'utilisateur IAM.

  • Pour en savoir plus sur les autres fournisseurs d'informations d'identification, consultez Standardized credential providers dans le manuel AWS SDKs and Tools Reference Guide.