Maison > Java > Mettre à jour les informations d'identification AWS

Mettre à jour les informations d'identification AWS

PHPz
Libérer: 2024-02-09 18:51:08
avant
898 Les gens l'ont consulté

Éditeur PHP Apple vous propose le dernier guide sur la « Mise à jour des informations d'identification AWS ». Les informations d'identification AWS sont requises pour accéder aux ressources Amazon Web Services (AWS). Cependant, avec le temps, les informations d'identification peuvent expirer ou devenir invalides. Pour garantir que vous pouvez continuer à accéder aux ressources AWS et à les gérer, il est essentiel de mettre régulièrement à jour vos informations d'identification AWS. Ce guide vous expliquera comment mettre à jour vos informations d'identification AWS pour garantir la continuité de votre travail, et vous fournira des conseils et des considérations utiles pour que vous puissiez le faire en douceur. Découvrons-le ensemble !

Contenu de la question

J'ai besoin de conseils sur la façon de mettre à jour mes informations d'identification AWS après leur expiration.

J'ai créé le bean d'amazonsimpleemailservice de cette façon :

@Bean
    public AmazonSimpleEmailService getSesClient() {
        return AmazonSimpleEmailServiceClientBuilder.standard()
                .withCredentials(new AWSStaticCredentialsProvider(new STSAssumeRoleSessionCredentialsProvider.Builder("ses-role-us-west-2", "mail-sender")
                        .build()
                        .getCredentials())
                )
                .withRegion(Regions.US_WEST_2).build();
    }
Copier après la connexion

Mais lorsque j'essaie de l'utiliser, j'obtiens l'erreur :

请求中包含的安全令牌已过期(服务:amazonsimpleemailservice;状态代码:403;错误代码:expiredtoken

Si je crée une instance client ses avant chaque envoi de mail, cela fonctionne bien, mais créer une nouvelle instance avant chaque utilisation semble être une mauvaise pratique.

Je comprends qu'il y a un problème avec les informations d'identification que j'obtiens via stsassumerolesessioncredentialsprovider - elles ont juste un délai d'expiration.

Je me demandais s'il devrait y avoir un moyen de renouveler automatiquement les informations d'identification lorsqu'elles sont sur le point d'expirer, j'apprécierais donc vraiment toute suggestion sur la façon de procéder.

Workaround

stsassumerolesessioncredentialsprovider 将自动刷新凭证,但您通过获取一组凭证并将其传递到 awsstaticcredentialsprovider instance pour bloquer cette fonctionnalité.

Cela devrait vous permettre d'utiliser l'actualisation automatique du fournisseur sts :

@Bean
    public AmazonSimpleEmailService getSesClient() {
        return AmazonSimpleEmailServiceClientBuilder.standard()
                .withCredentials(new STSAssumeRoleSessionCredentialsProvider.Builder("ses-role-us-west-2", "mail-sender")
                        .build()
                )
                .withRegion(Regions.US_WEST_2).build();
    }
Copier après la connexion

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!

Étiquettes associées:
lsp
source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal