1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Oracle Databaseのトークン・ベースの外部認証連携

1
Last updated at Posted at 2024-01-27

Oracle Databaseは、通常のパスワード認証だけでなく外部認証という機能があります。
以前紹介したActive Directory連携もその一つですが、クラウドのIDaaSとOAauth2によるトークン・ベース認証も19cからサポートされており、現在はOCI IAMAzure ADが使用可能です。※現在はAzure IDは、Entra IDとなっています。

image.png

Azure ADは、19.18以上のOracle Databaseはオンプレミス、クラウドに関わらず認証連携させることが可能です。OCI IAMは、Autonmous DatabaseやBase DatabaseなどのクラウドのOracle Databaseが対象で、接続のDatabase Clientが19.16以上が必要などの制限がありますので詳しくは最新のドキュメントをご確認下さい。

アクセストークンをデータベースに渡すフローは、TLSで暗号化されている必要があるため、データベース側のリスナーをTCPSでリスニングする設定が追加で必要になります。Autonomous Databaseは、WalletをダウンロードしてTLS接続しかできない仕様になっているのでこの設定は必要ないですが、一般的なOracle Databaseのリスナーは通常1521ポートのTCPだけでリスニングしていると思いますので、まずはこのTLSの設定を行います。

TLSは、クライアント側にOracle Walletを配置する方法、もしくはWalletなしでサーバー証明書だけの方法のいずれかが選択可能です。詳しくはこちら

ドキュメントを参照しながら実際に設定してみると難しく感じるところも多いように思います。Qiita内でも手順が紹介されているものもありますが、私自身の備忘録的にも、それぞれの手順について簡単に極力最小限の労力で構築する手順を紹介します。

Oracle Databaseの外部認証 - Oracle DatabaseのTLS接続 -
Oracle Databaseの外部認証 - OCI IAMとBaseDBのトークン・ベースの認証連携① -
Oracle Databaseの外部認証 - OCI IAMとBaseDBのトークン・ベースの認証連携② -
OCI IAMとAutonomous Databaseのトークン・ベースの認証連携
Oracle Databaseの外部認証 - Microsoft Entra IDとトークン・ベースの認証連携 -

1
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?