[アップデート] Amazon RDS for Oracleのマルチテナント構成でAWS Secrets Managerを使ったクレデンシャル管理がサポートされました

[アップデート] Amazon RDS for Oracleのマルチテナント構成でAWS Secrets Managerを使ったクレデンシャル管理がサポートされました

Clock Icon2025.05.26

しばたです。

先日AWSよりAmazon RDS for Oracleのマルチテナント構成でAWS Secrets Managerを使ったクレデンシャル管理をサポートした旨のアナウンスがありました。

https://aws.amazon.com/about-aws/whats-new/2025/05/amazon-rds-oracle-credential-management-aws-secrets-manager-multitenant-architecture/

本記事ではこちらの更新について解説していきます。

更新内容

私自身把握できていなかったのですが、これまでAmazon RDS for Oracleのマルチテナントアーキテクチャ構成ではSecrets Manager統合を使えませんでした。
非マルチテナントアーキテクチャの構成であればRDSがSecrets Manager統合をサポートした時から利用可能だったはずです。

RDS for Oracleでマルチテナントアーキテクチャ構成をサポートし始めたのは2023年11月からですが、確かにこの時点のDevelopsersIO記事のスクリーンショットを見ると各PDBの認証情報の管理にSecrets Managerが使えない状態になっていました。

https://dev.classmethod.jp/articles/rds-for-oracle-supports-oracle-multitenant-multi-tenants/

rds-for-oracle-supports-oracle-multitenant-multi-tenants-06
従来マルチテナント構成ではSecrets Manager統合を利用できなかった

今回のアップデートでこの部分が改善され各PDBの認証情報の管理にSecrets Managerを使える様になりました。

試してみた

それでは早速動作確認してみます。

今回は私の検証用AWSアカウントの東京リージョンにRDS for Oracleの環境を作ります。
VPCやパラメーターグループ、オプショングループなどの各種依存リソースは作成済みの状態からスタートします。

RDSインスタンスの新規作成

マネジメントコンソールから新規にRDSデータベースの作成を開始し、エンジンタイプは「Oracle」を選びます。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-01

アーキテクチャ設定は「Oracleマルチテナントアーキテクチャ」+「マルチテナント設定」にします。
エディションとバージョンはなんでも大丈夫ですが、今回はStandard Edition 2(SE2)エディションでOracle 19cの最新バージョンを選びました。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-02

続けてインスタンスの各種設定になり、ここで認証情報の設定でAWS Secrets Managerを選べる様になっています。
今回はこのままSecrets Managerを使う設定で進めます。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-03

その他設定はよしなに設定し、最後に「データベースの作成」をクリックします。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-04

しばらく待つとインスタンスが作成されます。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-05

データベースに対する認証情報はテナントデータベース(PDB)毎に保持されます。
最初のPDB(MYPDB)の詳細を確認すると「設定」タブにマスター認証情報がSecrets Managerで管理されているのが見て取れます。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-06
PDBの認証情報がSecrets Managerで管理されている

Secrets Manager側の設定画面に遷移するとこの通りです。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-07

いい感じですね。
ちなみにデフォルト設定で7日ごとのローテーションスケジュールになっていました。

PDBを増やしてみる

マルチテナント構成ではPDBを増やせます。
当然新たに増やすPDBの認証情報もSecrets Managerで管理可能です。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-08

今回は新たにMYPDB2を増やしてみました。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-09

このPDBの認証情報もSecrets Managerの別シークレットで保持されています。

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-10
追加したPDBの認証情報もSecrets Managerで管理可能

amazon-rds-oracle-cdb-multitenant-supports-secrets-manager-11

余談 : Secrets Manager非サポートの環境

「今回のアップデートで全てのRDS環境においてSecrets Manager統合がサポートされたのかな?」って思ったのですが、まだ以下の環境では非サポートとなっていました。

  • Creating a read replica when the source DB or DB cluster manages credentials with Secrets Manager. This applies to all DB engines except RDS for SQL Server.
  • Amazon RDS Blue/Green Deployments
  • Amazon RDS Custom
  • Oracle Data Guard switchover

Blue/Greenデプロイメント環境だと非サポートなのは意外でした。
あとOracleに関係しそうなのはRDS CustomとData Guard switchoverを使った環境ですが、こちらは正直レアケースだと思うのであまり気にしないで大丈夫だと思います。

最後に

簡単ですが以上となります。

個人的にはすでにサポート済みの機能だと思い込んでいたので少し驚きでした。
RDSのSecrets Manager統合は使うのが当然と言っても過言でないと思うのでRDS for Oracleのマルチテナント構成をご利用の方はぜひ採用してみてください。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.