"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo pasar credenciales de variables a AWS SDK versión 2 para acceder al servicio IAM?

¿Cómo pasar credenciales de variables a AWS SDK versión 2 para acceder al servicio IAM?

Publicado el 2024-11-15
Navegar:470

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

Pasar credenciales de variables a AWS SDK versión 2

Esta consulta se hace eco de una pregunta anterior sobre el uso de AWS SDK con credenciales de variables. Sin embargo, en este caso, se utiliza la versión 2 del SDK, que elimina la función Sesión.

Para establecer un nuevo cliente con credenciales obtenidas de variables para acceder al servicio IAM, considere la siguiente función:

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
}

Dado que varios usuarios pueden utilizar la aplicación simultáneamente, utilizar archivos ENV no es práctico. Sin embargo, es posible que la documentación que explique cómo pasar estas credenciales a un cliente no esté disponible.

Solución: proveedor de credenciales estáticas

Para resolver este problema, StaticCredentialsProvider puede ser utilizado, como se describe en la sección "Credenciales estáticas" de la documentación de AWS SDK para Go V2:

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

Al incorporar esta modificación, se pueden pasar credenciales de variables al SDK, lo que permite la recuperación y el uso de servicios IAM.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3