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é Session.
Pour établir un nouveau client avec les informations d'identification obtenues à partir de variables pour accéder au service IAM, considérez la fonction suivante :
<code class="go">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 }</code>
É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 » du kit AWS SDK for Go V2 documentation :
<code class="go">cfg, err := config.LoadDefaultConfig(ctx, config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider("AKID", "SECRET_KEY", "TOKEN")))</code>
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.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!