AWS CLI認証プロセス

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

概要

AWS CLIは、デフォルトではプレーンテキストで~/.aws/credentialsに保存された認証情報を使用します。この認証情報プロセスにより、Keeperボルトを使用して AWS 認証情報を保存できるようになり、認証情報をディスクに保存する必要がなくなります。

代わりに、AWS はこの実行可能ファイルを使用して、Keeperシークレットマネージャー (KSM) を介してボルトからAWS認証情報を安全に取得します。

特徴

  • ボルトに保管された AWS アクセスキーを使用して AWS CLI に認証します。

要件

この統合を利用するには、以下が必要となります。

セットアップ

ボルト

まず、AWSのAccess Key IDと をSecret Access Keyボルト内の記録に追加します。この種類の情報専用の記録タイプはありませんが、カスタム記録を作成できます。

新しいカスタム記録タイプを作成するには、ユーザーが「ボルト内の記録タイプを管理」の権限が有効になっている管理者ロールに属している必要があります。

注: フィールド名では大文字と小文字が区別されます。

カスタム記録に必要な最小限のフィールドの例

カスタムフィールドを作成することでAWSアクセスキーを保存するための記録を作成します。この記録は、KSMアプリケーションがアクセスする権限を持つ共有フォルダに保存します。

保存後、AWS認証情報ファイルからアクセスキー認証情報を削除できます。

Keeperシークレットマネージャー (KSM)

統合では、.config/keeper/aws-credential-process.jsonまたはユーザーのホームディレクトリにあるaws-credential-process.jsonに KSM アプリケーション構成ファイルが配置されている必要があります。また、必要なAWSアクセスキーを含む共有フォルダにアクセスできる必要があります。

KSM構成をJSON形式で取得するには、こちらのページの手順をご参照ください。新しいデバイスを作成した後、対応するconfig.jsonを取得し、aws-credential-process.jsonとしてユーザーのホームフォルダにコピーします。

AWS構成

GitHubリリースページからkeeper-aws-credential-process実行可能ファイルの最新バージョンをダウンロードし、任意の場所に保存します。

次に、通常 にある AWS 設定ファイルで、~/.aws/configCLI 経由で使用しているプロファイルに次の行を追加します。

# Add the UID for your AWS Access Key
#credential_process = /path/to/keeper-aws-credential-process --uid <Record UID>
credential_process = /opt/keeper-aws-credential-process-v0.1.1_linux_amd64  --uid <Record UID>

マシンにAWS CLI構成が残っていないことを確かにします。これが自動的に読み込まれたり、認証プロセスの設定ミスを引き起こしたりする可能性があります。

使用法

上記の設定を終えると、AWS CLIはKeeperボルトから認証情報を自動的に取得するようになります。動作を検証するには、以下のような適切なIAMロールが必要となるCLIコマンドを使用して動作を検証できます。

# List all s3 buckets
aws s3 ls

エラーなしで正常に完了する場合、これでセットアップは完了です。

機能リクエストおよび不具合の報告

この認証プロセスはオープンソースであり、GitHubで入手できます。バグ報告やより多くの認証事例への対応をご要望でしたら、こちらのGitHubページからチケットを作成してください。

最終更新