MySQL Workbenchを使ったIAM認証によるAmazon RDS接続
はじめに
こんにちは。クラウドリードチームのフクナガです。
記事をご覧いただきありがとうございます。
今回の記事では、MySQLのクライアントツールであるMySQL Workbenchを利用してIAM認証でRDSへ接続する方法についてご紹介します。
IAM認証を利用したRDS接続の環境構築
今回の記事では、「MySQL Workbenchを利用した接続方法」をメインとしているので簡潔に構築に必要な作業を記載いたします。
IAM認証によるRDS接続の構築手順
IAM ロールを使用して IAM データベース認証をセットアップするには、以下のステップを行います。
1. DB インスタンスで IAM DB 認証を有効にします。
2. AWS 認証トークンを使用するデータベースユーザーアカウントを作成します。
3. データベースユーザーを IAM ロールにマッピングする IAM ポリシーを追加します。
4. IAM ロールを Amazon EC2 インスタンスにアタッチします。
5. AWS 認証トークンを生成して、IAM ロールを識別します。
6. SSL ルート証明書ファイルまたは証明書バンドルファイルをダウンロードします。
7. IAM ロール認証情報と認証トークンまたは SSL 証明書を使用して DB インスタンスに接続します。
出典:IAM 認証情報を使用して Amazon RDS MySQL DB インスタンスに対する認証をユーザーに許可する方法を教えてください。
MySQL Workbenchを利用した接続
事前準備
- IAMユーザの作成
RDS接続用に作成したIAMポリシーを、利用者のIAMユーザへ付与する必要があります。こちらの認証情報を利用してローカルからRDSヘ接続することになります。 - AWS CLIのインストール
こちらのページを参考にローカルにAWS CLIを利用できる環境を構築する
Installing or updating the latest version of the AWS CLI
AWS CLIにIAM情報を読み込む
作成したIAMユーザのアクセスキー、シークレットキーを取得し、以下で設定
$ aws configure AWS Access Key ID [None]: [取得したアクセスキー] AWS Secret Access Key [None]: [取得したシークレットキー] Default region name [None]: [RDSが存在するリージョン] Default output format [None]: json
MySQL Workbenchからの接続
1. Workbenchを起動
2. 「Database」>「Connect to Database」を選択
3. 各パラメータを埋める
【Parameters】
Hostname: 接続先RDSエンドポイントを入力
Username: IAM接続用に作成したDBユーザ
Password: Store in Vaultを選択し、以下コマンドで出力された接続用トークンを入力
$ aws rds generate-db-auth-token --hostname [RDSエンドポイント] --port [接続先ポート] --username [DBユーザ] --region [リージョン]
【SSL】
Use SSL:Require and Verify CA
SSL CA File: 以下でダウンロードしたルート証明書を指定
https://s3.amazonaws.com/rds-downloads/rds-ca-2019-root.pem
【Advanced】
「Enable Cleartext Authentication Plugin」にチェックを入れる
4. OKを押下し、接続
まとめ
今回の記事では、クライアントツール(MySQL Workbench)を利用した接続についてご紹介いたしました。
IAM認証を利用し、セキュリティ観点のリファクタリングを行う事例が増えてきていると思いますが、開発者側からは今まで通りの使い方を求められるケースも多いと思います。
その他のクライアントツールを利用した場合についてもどこかで記事にできればと思います。
テックブログ新着情報のほか、AWSやGoogle Cloudに関するお役立ち情報を配信中!
Follow @twitterインフラエンジニア歴5年のフクナガです。2024 Japan AWS Top Engineers選出されました! 生成 AI 多めで発信していますが、CI/CDやIaCへの関心も高いです。休日はベースを弾いてます。
Recommends
こちらもおすすめ
-
Zabbix6.0のネイティブHA機能を試してみた
2022.3.1
-
AWS 認定 データベース – 専門知識 合格のための試験対策
2021.1.22
-
CloudFormationで認証情報を扱うベストプラクティス
2020.8.7
-
AWS 最新情報をキャッチアップし続ける方法
2023.12.20
-
Amazon RDS Performance Insights を有料利用枠にすると熱い
2023.12.31
-
Amazon RDS を使い始める際に見るべき 10 の設定
2023.2.9
Special Topics
注目記事はこちら
データ分析入門
これから始めるBigQuery基礎知識
2024.02.28
AWSの料金が 10 %割引になる!
『AWSの請求代行リセールサービス』
2024.07.16