Wallet (mTLS)を使用したAutonomous Databaseからパブリックにアクセス可能なOracle Databaseへのデータベース・リンクの作成
Autonomous Databaseからパブリック・エンドポイントにあるターゲットOracleデータベースへのデータベース・リンクを作成できます。
Autonomous Databaseでデータベース・リンクを使用するには、SSL付きTCP/IP (TCPS)認証を使用するようにターゲット・データベースを構成する必要があります。Autonomous Databaseは、デフォルトでSSL付きTCP/IP (TCPS)認証を使用するため、別のAutonomous Databaseにリンクするためにターゲット・データベースで追加の構成を行う必要はありません。その他のOracleデータベースは、SSL付きTCP/IP (TCPS)認証を使用するように構成する必要があります。詳細は、『Oracle Database 19cセキュリティ・ガイド』の「Secure Sockets Layer認証の構成」または『Oracle Database 23aiセキュリティ・ガイド』を参照してください。
パブリック・ターゲットへのデータベース・リンクを作成するには、ターゲットOracle Databaseにアクセスできる必要があります。データベースによっては、アクセスが制限される場合があります(アクセス制御リストの使用など)。データベース・リンクが機能するように、ターゲット・データベースでソース・データベースからのアクセスが許可されていることを確認してください。アクセス制御リスト(ACL)を使用してアクセスを制限すると、ソースAutonomous DatabaseのアウトバウンドIPアドレスを検索し、そのIPアドレスでターゲット・データベースに接続することを許可できます。
詳細は、Autonomous DatabaseからDatabase Cloud Serviceインスタンスへのデータベース・リンクの作成方法を参照してください。
ウォレット(mTLS)を使用してターゲットOracleデータベースへのデータベース・リンクを作成するには:
ステップ5で作成した資格証明(ターゲット・データベースの資格証明)では、ターゲット・ユーザーのパスワードが変更された場合、ターゲット・ユーザーの資格証明を含む資格証明を次のように更新できます:
BEGIN
DBMS_CLOUD.UPDATE_CREDENTIAL
(
credential_name => 'DB_LINK_CRED',
attribute => 'PASSWORD',
value => 'password' );
END;
/
ここで、passwordは新しいパスワードです。
この操作の後、この資格証明を使用する既存のデータベース・リンクは、データベース・リンクを削除して再作成しなくても引き続き機能します。
その他の情報については、次のWebサイトを参照してください。
ターゲットOracle Databaseでのデータベース・リンクに関するノート
ターゲットOracleデータベースへのデータベース・リンクの作成に関するノートを提供します(ターゲットがAutonomous Databaseではない場合)。
他のOracleデータベースへのデータベース・リンクに関するノート:
-
データベース・リンクで使用するウォレット・ファイルは、ディレクトリごとに1つのみ有効です。ウォレット・ファイル用に選択したディレクトリ(DBLINK_WALLET_DIRなど)に一度にアップロードできるのは1つの
cwallet.sso
のみです。つまり、DBLINK_WALLET_DIRのcwallet.sso
では、ディレクトリ内のウォレットが有効なデータベースへのデータベース・リンクのみを作成できます。複数のcwallet.sso
ファイルをデータベース・リンクで使用するには、追加のディレクトリを作成し、各cwallet.sso
を異なるディレクトリに配置する必要があります。DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
を使用してデータベース・リンクを作成する場合は、directory_name
パラメータでウォレットを含むディレクトリを指定します。ディレクトリの作成の詳細は、Autonomous Databaseのディレクトリの作成を参照してください。
-
別のOracle Databaseへのデータベース・リンクでサポートされるターゲットOracleデータベース・バージョンは、19c、12.2.0および12.1.0です。
ノート:
サポートされているバージョンの詳細は、「異なるOracleバージョンのクライアント・サーバー相互運用性サポート・マトリックス(ドキュメントID 207303.1)」を参照してください -
Autonomous Databaseでは
SEC_CASE_SENSITIVE_LOGON
パラメータがtrue
に設定され、この値は変更できません。ターゲット・データベースがAutonomous Databaseでない場合は、ターゲット・データベースでSEC_CASE_SENSITIVE_LOGON
パラメータをtrue
に設定する必要があります。ターゲット・データベースでSEC_CASE_SENSITIVE_LOGON
がfalse
に設定されている場合、エラーORA-28040: No matching authentication protocol
が発生します。 -
データベース・リンクをリストするには、
ALL_DB_LINKS
ビューを使用します。詳細は、『Oracle Database 19cデータベース・リファレンス』のALL_DB_LINKSまたは『Oracle Database 23aiデータベース・リファレンス』を参照してください。 -
ウォレット・ファイルは、データベースのユーザーIDおよびパスワードと組み合せて、ターゲットのOracle Database内のデータへのアクセスを可能にします。ウォレット・ファイルは安全な場所に保存してください。ウォレット・ファイルは、権限のあるユーザーとのみ共有してください。
-
Autonomous Databaseインスタンスがプライベート・エンドポイント上にある場合、ターゲット・データベースを指定する2つのオプションがあります:
hostname
パラメータまたはrac_hostnames
パラメータのいずれかを使用します:-
プライベート・エンドポイント上のターゲットの場合、
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
では、hostname
パラメータを使用した単一ホスト名の指定がサポートされています。プライベート・エンドポイントでは、IPアドレス、SCAN IPまたはSCANホスト名の使用はサポートされていません(ターゲットがパブリック・エンドポイント上にある場合、CREATE_DATABASE_LINK
はIPアドレス、SCAN IPまたはSCANホスト名の使用をサポートします)。 -
ターゲットがOracle RACデータベースの場合、
rac_hostnames
パラメータを使用して、DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
で1つ以上のホスト名を指定します。これにより、Oracle RACの高可用性機能を利用できます。rac_hostnames
値でのIPアドレス、SCAN IPまたはSCANホスト名の使用はサポートされていません。rac_hostnames
パラメータでホスト名のリストを指定すると、CREATE_DATABASE_LINK
は、指定されたすべてのホスト名を接続文字列のアドレスとして使用します。指定されたホストのいずれかがターゲットのOracle RACデータベースで使用できない場合、Autonomous Databaseは、リストから別のホスト名を使用して自動的に接続を試みます。 -
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
は、hostname
またはrac_hostnames
パラメータの値localhost
をサポートしていません。
-