mTLSプロトコルを使用したWalletを使用したOracle Autonomous DatabaseへのJDBC接続の簡素化 (2023/07/30)

mTLSプロトコルを使用したWalletを使用したOracle Autonomous DatabaseへのJDBC接続の簡素化 (2023/07/30)

https://medium.com/oracledevs/simplifying-oracle-autonomous-database-connection-with-wallet-using-mtls-protocol-dc2795979808

投稿者:vijay balebail




はじめに


Oracle Autonomous Database (ADB)は、自動運転、自己保護および自己修復が可能なインフラストラクチャを提供する、強力なクラウドベースのデータベース・サービスです。ADBとクライアント・アプリケーション間のセキュアな接続を確立するために、Oracleでは、ウォレットと相互のTransport Layer Security (mTLS)プロトコルを使用することをお薦めします。ただし、TNS_ADMINプロパティの制限により、クライアント・アプリケーションでのウォレットの場所の構成が困難になる場合があります。このブログでは、JDBC URLを使用してウォレットの場所をより簡単に構成する方法について検討し、アプリケーション・サーバーやプロパティ・ファイルの広範な変更が不要になります。


TNS_ADMINプロパティの課題:


Oracleドキュメントでは、TNS_ADMINプロパティを使用してクライアント・アプリケーションのウォレットの場所を指定することが推奨されています。ただし、この方法にはいくつかの制限があります。まず、TNS_ADMINプロパティは、環境変数、ojdbcプロパティ・ファイル、アプリケーション・サーバー(Wildflyなど)プロパティ・ファイルなど、複数の場所に設定できます。この多重構成オプションを使用すると、混乱や不整合が発生し、正しいウォレットの場所が使用されていることを確認するのが困難になります。


TNS_ADMINプロパティのもう1つの課題は、単一の値のみを許可するという制限です。この制限は、それぞれ独自のウォレットを持つ複数のADBインスタンスへの接続が問題となることを意味します。その結果、ユーザーは多くの場合、この制限を克服するために、複数のTNS_ADMINプロパティを管理したり、代替の複雑な構成に頼る必要があります。


より簡単なアプローチ: JDBC URL内のWalletの場所:


TNS_ADMINプロパティの制限を克服するために、Oracleでは、JDBC URLでウォレットの場所を直接指定するより簡単な方法が導入されました。この方法により、構成プロセスが簡略化され、特定の知識や複数のTNS_ADMINプロパティを必要とせずに、ユーザーが任意の数のADBインスタンスに接続できるようになります。


次に、ウォレットの場所を組み込んだJDBC URL構文の例を示します。


jdbc:oracle:thin:@(DESCRIPTION= (ADDRESS= (PROTOCOL=tcps) (Host=hostname) (Port=1522)) (CONNECT_DATA= (SERVICE_NAME=myservicename)) (Security=(my_wallet_directory=/opt/wildfly/jnetadmin_c/)))


この例では、JDBC URLにmy_wallet_directoryパラメータが追加されています。「MY_WALLET_LOCATION」を実際のウォレット・ディレクトリ・パスに置き換えることで、アプリケーションは、プロパティ・ファイルまたは環境変数を変更することなく、ADBにシームレスに接続できます。


19c JDBCドライバの起動: URL内のTNS_ADMIN:


19c JDBCドライバ以降、JDBC URLにTNS_ADMINプロパティを直接設定するための追加のメソッドが導入されました。このディレクトリ(TNS_ADMIN URL)では、追加の構成ファイルとウォレットを使用できます。これにより、ウォレットの場所の構成の柔軟性と利便性がさらに向上します。


次に、TNS_ADMINプロパティを組み込んだJDBC URL構文の例を示します。


jdbc:oracle:thin:@dbname_high?TNS_ADMIN=/Users/test/wallet_dbname


前述の例では、URLに、ウォレット・ファイルとtnsnames.oraファイルの場所を指定するTNS_ADMINパラメータが含まれています。このアプローチにより、ユーザーは必要なすべての接続情報を含む単一のURLを使用でき、構成プロセスをさらに簡素化できます。



JDBC URLアプローチの利点:


  1. 簡易構成: JDBC URLアプローチを使用すると、アプリケーション・サーバーのプロパティやプロパティ・ファイルを変更する必要がなくなり、複雑さと潜在的なエラーが減少します。ウォレットの場所を構成できる場所は1つのみであるため、管理が簡単になります。
  2. 複数のADBインスタンスの柔軟性: JDBC URLメソッドを使用して複数のADBインスタンスに接続すると、手間がかかりません。各インスタンスには、JDBC URLに独自のウォレットの場所を指定できるため、アプリケーションは様々なデータベースに安全に接続できます。
  3. 合理化されたアプリケーション・デプロイメント: 開発者および管理者は、アプリケーション・サーバーまたはプロパティ・ファイル構成に関する詳細な知識を持っていなくてもかまいません。これにより、デプロイメント・プロセスが簡略化され、様々な環境間で一貫性が確保されます。



まとめ


Oracle Autonomous Databaseは、エンタープライズ・データを管理するための堅牢で安全なクラウドベースのソリューションを提供します。データのプライバシと整合性を確保するには、mTLSプロトコルおよびウォレットを使用してADBに接続することを強くお薦めします。JDBC URLアプローチを利用してウォレットの場所を指定することで、アプリケーション開発者および管理者は、TNS_ADMINプロパティの制限なく、構成プロセスを簡素化し、複数のADBインスタンスに接続できます。このアプローチにより、Oracle Autonomous Databaseを使用して柔軟性が向上し、潜在的なエラーが削減され、アプリケーションのデプロイメントが合理化されます。


コメント

このブログの人気の投稿

Oracle RACによるメンテナンスのためのドレインとアプリケーション・コンティニュイティの仕組み (2023/11/01)

Oracle Cloud Infrastructure Secure Desktopsを発表: デスクトップ仮想化のためのOracleのクラウドネイティブ・サービス (2023/06/28)

Oracle Cloudのデータベースをオブジェクト・ストレージにバックアップする3つの方法 (2021/12/13)