Сохраните идентификатор ключа доступа и секретный ключ доступа на диск с помощью golang aws sdk

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

Сами учетные данные предоставляются пользователем. Они вводят свой идентификатор ключа доступа и секретный ключ доступа. Это то, что я хочу сохранить на диск.

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


person Brian Schultz    schedule 20.11.2017    source источник


Ответы (1)


Формат базовый:

[по умолчанию] aws_access_key_id = ... aws_secret_access_key =

В Windows это файл %USERPROFILE%.aws\credentials В Linux $HOME/.aws/credentials

person Doug Schwartz    schedule 01.12.2017
comment
Это то, что я делаю сейчас, но есть больше правил, чем то, что использует AWS cli. Например, вы можете установить переменную окружения AWS_SHARED_CREDENTIALS_FILE, которая изменяет используемые вами ключи, вы можете установить переменную окружения для управления расположением файла учетных данных, вы можете установить переменную окружения для управления самими ключами и токенами и т. д. Я бы предпочел, чтобы библиотека отслеживала правила, а не мое собственное приложение, и пусть библиотека управляет учетными данными. - person Brian Schultz; 04.12.2017
comment
К сожалению, мы не можем контролировать действия CLI. Если вы хотите убедиться, что CLI и ваши приложения Go используют одни и те же учетные данные, у вас есть несколько вариантов. Вы могли использовать только переменные среды; отменить все связанные переменные среды и использовать только файл учетных данных по умолчанию. - person Doug Schwartz; 05.12.2017
comment
Это имеет смысл, но документация предполагает, что SDK понимает те же правила, что и интерфейс командной строки, и работает по этим правилам: Документ сессии. Например, когда вы создаете NewSession без указания каких-либо переопределений, он знает, какие кредиты использовать. В любом случае это не имеет значения, SDK не имеет возможности добавлять кредиты. - person Brian Schultz; 06.12.2017