AWS CLI認証プロセス
KeeperシークレットマネージャーでAWSアクセスキーを保護

概説
AWS CLIは、デフォルトでは ~/.aws/credentials に平文で保存された認証情報を使用します。本認証プロセスを使用すると、AWS認証情報をKeeperボルトに保存でき、ディスク上に認証情報を置く必要がなくなります。
認証時は、Keeperシークレットマネージャー (KSM) と実行可能ファイルを通じて、ボルトからAWS認証情報が安全に取得されます。
機能
ボルトに保存されたAWSアクセスキーを使用してAWS CLIに認証
要件
本ページでは、AWS CLI認証プロセスについて取り扱います。本連携を利用するには、以下が必要です。
Keeperシークレットマネージャーへのアクセス(クイックスタートガイドをご参照ください)
Keeperのサブスクリプションでシークレットマネージャーアドオンが有効になっていること
シークレットマネージャーポリシーが有効なロールに所属していること
アクセスキーが共有されているKeeperシークレットマネージャーアプリケーション
アプリケーションの作成手順については、クイックスタートガイドをご参照ください
初期化済みのKeeperシークレットマネージャー構成
本連携ではJSON形式の構成のみ使用可能
AWS CLI v2がインストールされていること
設定
ボルト
まず、AWSの Access Key ID と Secret Access Key をボルト内のレコードに追加します。この種類のシークレット専用の組み込みレコードタイプはありませんが、カスタムレコードタイプを作成して対応できます。
新しいカスタムレコードタイプを作成するには、[ボルト内のレコードタイプを管理] 権限が有効な管理者ロールに所属している必要があります (権限の詳細)。
注 フィールド名は大文字と小文字を区別します。

カスタムレコードタイプに必要な最小限のフィールドの例
カスタムレコードタイプを作成したら、AWSアクセスキー用のレコードを作成します。このレコードは、KSMアプリケーションがアクセス権を持つ共有フォルダに保存します。
レコードへの保存が完了したら、AWS認証情報ファイルからアクセスキーを削除できます。
KSM
KSMアプリケーション構成ファイルは、ユーザーのホームディレクトリ内の .config/keeper/aws-credential-process.json または aws-credential-process.json に配置します。必要なAWSアクセスキーを含む共有フォルダへのアクセス権も必要です。
JSON形式のKSM構成の取得方法については、構成ドキュメントをご参照ください。新しいデバイスを作成したら、対応する config.json を取得し、ユーザーのホームディレクトリに aws-credential-process.json としてコピーします。
AWS構成
GitHubリリースページから keeper-aws-credential-process 実行可能ファイルの最新バージョンをダウンロードし、任意の場所に保存します。
CLIで使用する各プロファイルのAWS設定ファイル (通常 ~/.aws/config) に、以下の行を追加します。
マシンに残ったAWS CLI構成が自動的に選ばれたり、認証プロセスの設定ミスを招いたりする可能性があります。不要な構成が残っていないことを確認してください。
使用方法
上記のとおり設定すると、KeeperボルトからAWS CLI用の認証情報が自動的に取得されます。動作確認には、適切なIAM権限が必要なCLIコマンドを実行します。以下に例を示します。
エラーなく完了すれば、セットアップは完了です。
機能リクエスト / 不具合報告
本認証プロセスはオープンソースで、GitHubで公開されています。不具合の報告や認証ユースケースの拡張をご要望の場合は、GitHub Issueを作成してください。
最終更新

