初心者向け：AWS RDSで自動生成されたパスワードの確認方法と忘れた際の対処法

## はじめに
AWS RDSでMySQLデータベースを構築する際、「パスワードを自動生成する」オプションを選んだものの、その確認方法がわからず、データベースを作り直した経験があります。

同じような悩みを抱える方への参考になればと思い、また自分自身の備忘録として、パスワードの確認方法をまとめました。

## RDSとは
RDS（Relational Database Service）は、AWSが提供するマネージドデータベースサービスです。

https://aws.amazon.com/jp/rds/

データベースのインフラ管理を省略し、スケーラブルで高可用性のリレーショナルデータベースを簡単に利用できます。

**主なサービスの特徴は以下の通りです。**

:::note info
- **サポートするエンジン:** 
MySQL、PostgreSQL、MariaDB、Oracle、SQL Serverなど。

- **自動バックアップ:** 
データの安全性を確保するための自動スナップショット作成機能。

- **スケーリング:** 
負荷に応じたインスタンスのサイズ変更が可能。

- **セキュリティ:** 
VPCやIAMと統合され、セキュアな環境を提供。
:::

RDSの詳細については、以下の記事でも詳しく解説しています。興味のある方はぜひご覧ください！

https://qiita.com/free-honda/items/d20fb420b98eb99bcddd

## 実際にやってみた

今回の目的は「自動生成されたパスワードの確認」です。そのため、構成はシンプルなシングルAZ構成で進めました。

### データベース作成手順

AWSマネジメントコンソールでRDSサービス画面を開き、「データベースの作成」をクリックします。

![スクリーンショット 2024-11-28 7.02.49.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/b0d950fd-cbef-4232-1009-5ce496c6530e.png)

データベース作成方法は「簡単に作成」を選択し、エンジンのタイプは「MySQL」を選択します。

![スクリーンショット 2024-11-28 7.03.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/14e53d24-55b1-f165-44b9-be6d9903f8b5.png)

インスタンスサイズで「無料利用枠」を選択します。DB識別子やマスターユーザー名はデフォルトのままで進めます。

![スクリーンショット 2024-11-28 7.05.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/8425a95f-b562-88fe-16f8-9bdc94250418.png)

認証情報管理の設定は、「セルフマネージド」を選択し、「パスワードを自動生成」にチェックを入れます。

![スクリーンショット 2024-11-28 7.05.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/bab572fb-7cf2-1ab9-559d-464f227490f7.png)

その他の項目は任意で設定してください。詳しい作成方法について知りたい方は、以下の記事も参考にしてください。

https://qiita.com/free-honda/items/d20fb420b98eb99bcddd

## 初期パスワードの確認方法

データベース作成中に、RDS管理画面の右上に「認証情報の詳細を表示」ボタンが表示されます。ここをクリックすると以下の情報を確認できます。

![スクリーンショット 2024-11-28 7.07.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/8fb3edaf-23b4-b100-1f4b-86f7890efa49.png)

「データベース database-1 の接続の詳細」画面が表示され、そこにユーザー名とパスワード情報が記録されています。

![スクリーンショット 2024-11-28 7.08.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/129cfec6-495a-3e60-0860-096b4dca9428.png)

基本的にマスターパスワードを確認するには、データベース作成時に「認証情報の詳細の表示」を選択する必要があります。

:::note alert
**注意**
この画面は一度閉じると再表示できません。パスワードは必ず控えておきましょう。
:::

RDSの作成が完了すると、以下のような画面が表示されます。

![スクリーンショット 2024-11-28 7.11.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/b804b19c-f803-7c61-0774-d29bdec6bbe4.png)

## 初期パスワードを控え忘れた場合

万が一パスワードを控え忘れた場合でも、以下の手順で対応可能です。

:::note warn
**データベース設定を変更してマスターパスワードをリセットする方法をご紹介します。**
:::

RDS管理画面で、右上にある「変更」ボタンをクリックします。作成したデータベースの変更サマリー画面に遷移します。

![スクリーンショット 2024-11-28 7.23.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/0394f36a-b820-cdd6-4081-c39a15c2f4bd.png)

右上の変更ボタンから、作成したデータベースの変更サマリー画面に遷移します。

![スクリーンショット 2024-11-28 7.23.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/565b7c58-aaa1-99ae-1519-2895c77714a1.png)

再度、「認証情報管理」で「セルフマネージド」を選択し、「パスワードを自動生成」にチェックを入れます。

![スクリーンショット 2024-11-28 7.23.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/8d47ddb6-83d1-7c44-c6a4-c65ed16c3195.png)

この画面には「現在の値」が表示されていますが、AWSではセキュリティ上の理由からパスワードを直接確認することはできません。

:::note alert
**パスワードを変更する際、接続が一時的に失敗する可能性があります。業務への影響を考慮し、慎重に実施してください。**
:::

## まとめ
RDSデータベース構築時にパスワード自動生成を利用する場合、適切な確認方法を理解しておくことが重要です。これにより、手戻りやトラブルを防ぐことができます。

:::note
**また、AWS Secrets Managerの活用は、パスワードを忘れた場合の有効な対策となります。**
:::

今後もRDSに関する技術検証を進め、より効率的でスムーズな運用方法を模索していきます。この情報が皆さまの技術的な助けとなれば幸いです！
## 参考記事

https://dev.classmethod.jp/articles/automatically-generate-a-password-with-cdk/

https://www.mathkuro.com/cloud/aws-rds-read-initial-password/