"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment transmettre les informations d'identification des variables au kit SDK AWS version 2 pour l'accès au service IAM ?

Comment transmettre les informations d'identification des variables au kit SDK AWS version 2 pour l'accès au service IAM ?

Publié le 2024-11-15
Parcourir:246

How to Pass Credentials from Variables to AWS SDK Version 2 for IAM Service Access?

Transmission des informations d'identification des variables vers AWS SDK version 2

Cette enquête fait écho à une question précédente concernant l'utilisation du SDK AWS avec les informations d'identification des variables. Cependant, dans ce cas, la version 2 du SDK est utilisée, ce qui élimine la fonctionnalité de session.

Pour établir un nouveau client avec les informations d'identification obtenues à partir de variables pour accéder au service IAM, envisagez la fonction suivante :

func getIAMClient(ctx context.Context) (*iam.Client, error) {
    cfg, err := config.LoadDefaultConfig(ctx, config.WithRegion("no-region"))
    if err != nil {
        return nil, errors.Wrap(err)
    }

    cfg.HTTPClient, err = getHTTPClient(ctx)
    if err != nil {
        return nil, err
    }

    return iam.NewFromConfig(cfg), nil
}

Étant donné que plusieurs utilisateurs peuvent utiliser l'application simultanément, l'utilisation de fichiers ENV n'est pas pratique. Cependant, la documentation expliquant comment transmettre ces informations d'identification à un client peut ne pas être facilement disponible.

Solution : fournisseur d'informations d'identification statiques

Pour résoudre ce problème, le StaticCredentialsProvider peut être utilisé, comme indiqué dans la section « Informations d'identification statiques » de la documentation AWS SDK for Go V2 :

cfg, err := config.LoadDefaultConfig(ctx, config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider("AKID", "SECRET_KEY", "TOKEN")))

En incorporant cette modification, les informations d'identification peuvent être transmises des variables au SDK, permettant la récupération et l'utilisation des services IAM.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3