にアプリケーションをデプロイするときに、パスワードをテキストファイル、構成ファイル、またはデプロイメントファイルに保存していますか? アマゾンAWSクラウド? はいの場合、あなたはあなたの秘密を危険にさらしています。 幸いなことに、 AWSCLIシークレットマネージャー 攻撃者がパスワードにさらされるのを防ぎます。
The AWSCLIシークレットマネージャー すべてのセキュリティ上の懸念を解決し、保存されているすべてのパスワードを暗号化し、それらを取得している間のみ復号化します。 このチュートリアルでは、機密情報を詮索好きな目から保護する方法を学習します。
準備? 読んで、あなたの秘密を守ってください、まあ、秘密です!
P必要条件
このチュートリアルは、段階的なデモンストレーションになります。 フォローしたい場合は、次のものが用意されていることを確認してください。
- Windowsマシン–このチュートリアルではWindows 10を使用していますが、それ以降のバージョンでも機能します。
IAMユーザーが持っていることを確認します プログラムによるアクセス また、AmazonIAMFullAccessの既存のポリシーにユーザーを割り当てます。
- AWS RDSMicrosoftSQLサーバーデータベースインスタンス。
AWSクレデンシャルを使用したAWSCLIの設定
AWS CLIは、AWSAPIを使用してAWSサービスを管理およびプロビジョニングできるようにするコマンドラインツールです。 ただし、AWS CLIを使用してコマンドを実行する前に、まずAWSクレデンシャルを使用してAWSCLIを設定する必要があります。 そうすることで、AWSアカウントに接続してコマンドを実行できます。
AWS CLIでAWSクレデンシャルを設定するには:
1.管理者としてコマンドプロンプトを開き、次のコマンドを実行してAWSクレデンシャルを設定します(aws configure)。
cd C:Users # Change the working directory to C:Users
aws configure # Configure AWS credentials
AWSアクセスキーID、シークレットアクセスキー、リージョンなど、AWSIAMユーザーの詳細を入力します。 デフォルト、テキスト、またはjsonとして出力形式をスキップできます。
2.次に、ファイルエクスプローラーを開き、に移動します。 C: Users %USERNAME%。aws ディレクトリを作成し、資格情報と構成ファイルが存在するかどうかを確認します。
3.資格情報と構成ファイルを開きます。 手順1で指定した資格情報が両方に正常に保存されていることがわかります。
4.最後に、次のコマンドを実行して、AWSクレデンシャルが機能しているかどうかをテストします。
このコマンドは、AWSクレデンシャルを使用してAWSアカウントへの認証を行い、すべてのインスタンスのリストを取得します。
# Change directory, one level up (C:Users%USERNAME%).
cd ..
# Retreive the lists of all instances.
aws ec2 describe-instances
コマンドを実行すると、AWSAPIを使用してAWSリソースに接続することに注意してください。
AWSCLIを介したシークレットの作成
AWS CLI設定とAWSクレデンシャルが正しく機能することを正常に確認しました。これで、シークレットを作成する準備が整いました。 このチュートリアルの後半では、これらのシークレットを使用してデータベースに接続します。
というファイルを作成します creds.json デスクトップに、データベースの詳細を含む以下の構成をコピーして貼り付けます。これは後でシークレットとして保存します。
{
"username": "admin",
"password": "password",
"engine": "sqlserver"
"host": "database-3.cgph34pcibdl.us-east-1.rds.amazonaws.com"
"port": "1433"
"dbInstanceIdentifier": "database-3"
}
次に、以下のコマンドを実行して、以下を実行します。
- 作業ディレクトリを変更します(
cd
)あなたにDesktop
ディレクトリ。 - AWSシークレットを作成します(
create-secret
)名前付きMySecret_DB
に対してcreds.json
ファイル。
# Change working directory to Desktop
cd Desktop
# Create an AWS secret
aws secretsmanager create-secret --name mySecret_DB --secret-string file://creds.json
以下の出力には、シークレットが含まれています ARN、 名前、 と VersionId。
次のコマンドを実行すると、シークレットを何度でも更新できます。ここで、–secret-id シークレットのARNまたは名前を指定します。 aws secrets manager update-secret –secret-id ARN_OR_NAME –secret-string“ NewValue”
AWSマネジメントコンソールを介したAWSシークレットの確認
AWS CLIを使用してシークレットを作成したところですが、これは大きな一歩です。 しかし、AWSクラウドに秘密が存在することをどうやって知るのでしょうか? AWSマネジメントコンソールで手動でチェックインして、AWSシークレットを確認します。
1.お気に入りのWebブラウザーを開き、にログインします。 AWSマネジメントコンソール。
2.コンソールのホームページでシークレットを検索し、結果からシークレットマネージャーを選択します。 そうすることで、ブラウザをAWS Secrets Managerを表示および管理できるページにリダイレクトします(ステップ3)。
3.最後に、以下のリストからシークレットをクリックして、シークレットの情報にアクセスします。
名前、ARN、値(キー/値)など、すべてのシークレットの詳細を説明する以下のページが表示されます。
AWS CLISecretsManagerを使用したAWSRDSDBインスタンスの認証
シークレットの検証に成功したとしても、それらはAWSSecretsManagerサービスにあるだけです。 それらを取得し、AWS RDSサービスで認証を実行する方法を学びませんか?
AWSSecretsManagerを使用してAWSRDSDBインスタンスで認証するには:
1.デスクトップまたはスタートメニューからAWSスキーマ変換ツール(AWS VPNクライアント)を開きます。
2.次に、[ファイル]—>[新しいプロジェクト]をクリックして、プロジェクトを作成します。
3.プロジェクト名(ATA_Project)とプロジェクトを保存する場所を入力し、[OK]をクリックしてプロジェクトを作成します。
プロジェクトを作成すると、ウィンドウの上部にプロジェクト名(ATA_Project)が表示されます(ステップ4)。
4.次に、[設定]—>[グローバル設定]をクリックして、AWSプロファイルを追加できる[グローバル設定]ウィンドウを開きます(ステップ5)。
5.[グローバル設定]ウィンドウで、[新しいAWSサービスプロファイルの追加]をクリックして、新しいAWSサービスプロファイルの追加を開始します。
6.次に、新しいAWSサービスプロファイルの詳細を入力します。
- プロファイル名 –一意のプロファイル名を設定しますが、このチュートリアルの選択は NewProfile 1。
- AWSアクセスキー と 秘密鍵 –「AWSクレデンシャルを使用したAWSCLIの設定」セクションのステップ1でAWSアクセスキーとシークレットキーを入力します。
- 領域 –認証してAWSサービスに接続するリージョンを設定します。
- クリック わかった 新しいAWSサービスプロファイルを作成します。
7. AWSサービスプロファイルを作成した後、ツールバーから[ソースの追加]をクリックして、接続できるデータベースのリストを表示します(ステップ8)。
8. Microsoft SQL Serverオプションを選択し、[次へ]をクリックしてデータベースソース接続を構成します。
9. MicrosoftSQLServerに接続するための次の詳細を提供します。
- 接続名 –好きな接続名を入力しますが、このチュートリアルでは DB_AWS_secrets_connection。」
- AWSシークレット– AWSシークレットを選択します(mySecret_DB)、[入力]をクリックします。 AWSシークレットマネージャーで作成したAWSシークレットは、必須フィールドに自動的に入力されます。
10.次に、[接続のテスト]をクリックして、シークレットが正しく、作成されたデータベースに接続できるかどうかを確認します。 そうすることで、AWS SchemaConversationToolがAWSアカウントとサービスを認証できるかどうかをテストします。
11.最後に、をクリックします 接続 (右下)データベースに接続します。
接続すると、以下に示すように、エンジンバージョン、接続の詳細など、すべてのデータベースの詳細が表示されます。
結論
AWSシークレットの管理には、AWSコンソールやTerraformを直接使用するなど、さまざまな方法があります。 ただし、このチュートリアルでは、単一のコマンドでAWSCLIを使用してAWSシークレットを保存する方法を学習しました。 最終的には、AWS ConversionSchemaToolでAWSシークレットを使用してデータベースに接続しました。
あなたは今、あなたの秘密を詮索好きな目から安全に保つ知識を身につけています。 AWS CLIを使用して、次にAWSシークレットに何を保存する予定ですか?
The post AWS CLISecretsManagerを使用した機密情報の管理 appeared first on Gamingsym Japan.