2017-11-20 16 views
1

を使用してディスクにアクセスキーIDと秘密鍵を格納するGO for AWS SDKを使用してaws認証情報をディスクに保存しようとしています。これらの資格情報を資格情報チェーンで使用されている標準ファイルに保存する必要があります。golang aws sdk

資格情報自体はユーザーが入力したものです。アクセスキーIDとシークレットアクセスキーを入力します。それらは私がディスクに永続化したいものです。

私はこのファイルを自分で作成することができましたが、私はSDKにそれをさせたいと思います。 SDKは私よりも信用チェーンのルールをよく知り、ルールが変わるたびにSDKがそれを処理します。

答えて

0

形式は基本的なものです:Windowsでは

[デフォルト] aws_access_key_id = ... aws_secret_access_key =

ファイルは/ Linuxの$ HOME/.awsに%USERPROFILE%.aws \資格情報 です資格情報

+0

これは私が今やっていることですが、AWS cliより多くのルールがあります。たとえば、使用するキーを変更するAWS_SHARED_CREDENTIALS_FILE env varを設定したり、資格ファイルの場所を制御するためにenv varを設定したり、キーやトークンを制御するためにenv varを設定したりできます。私はむしろ図書館に自分のアプリケーションではなくルールを記録させ、図書館に資格情報を管理させるようにします。 –

+0

残念ながら、私たちはCLIが何をするのかを制御することはできません。 CLIとGoアプリが同じ資格情報を使用するようにするには、複数のオプションがあります。環境変数のみを使用できます。関連するすべての環境変数を設定解除し、デフォルトの資格証明ファイルのみを使用します。 –

+0

それは理にかなっていますが、SDKはCLIがCLIと同じルールを理解し、それらのルールで動作することをドキュメントに示唆しています:[Session doc](http://docs.aws.amazon.com/sdk-for-go/api/ aws/session /)。同様に、オーバーライドを指定せずにNewSessionを作成すると、使用するクレジットを知ることができます。とにかく問題はありませんが、SDKにはcredを追加する機能はありません。 –