«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как передать учетные данные из переменных в AWS SDK версии 2 для доступа к сервису IAM?

Как передать учетные данные из переменных в AWS SDK версии 2 для доступа к сервису IAM?

Опубликовано 15 ноября 2024 г.
Просматривать:916

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

Передача учетных данных из переменных в AWS SDK версии 2

Этот запрос перекликается с предыдущим вопросом об использовании AWS SDK с учетными данными из переменных. Однако в этом случае используется SDK версии 2, которая исключает функцию сеанса.

Чтобы установить новый клиент с учетными данными, полученными из переменных, для доступа к службе IAM, рассмотрите следующую функцию:

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
}

Поскольку несколько пользователей могут использовать приложение одновременно, использование файлов ENV нецелесообразно. Однако документация, объясняющая, как передать эти учетные данные клиенту, может быть недоступна.

Решение: поставщик статических учетных данных

Чтобы решить эту проблему, StaticCredentialsProvider можно используется, как указано в разделе «Статические учетные данные» документации AWS SDK для Go V2:

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

Благодаря включению этой модификации учетные данные могут передаваться из переменных в SDK, что позволяет извлекать и использовать службы IAM.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3