Autonomous Database Instanceへの接続について
データベース・ユーザーを作成すると、アプリケーションおよびツールは、Oracle Net Services (SQL*Netとも呼ばれる)を使用してAutonomous Databaseに接続します。 Oracle Net Servicesは、クライアント・アプリケーションからOracle Databaseサーバーへのネットワーク・セッションを有効にします。
ネットワーク・セッションが確立されると、Oracle Net Servicesはクライアント・アプリケーションとデータベースの両方のデータ・クーリエとして機能します。 これは、クライアント・アプリケーションとデータベース間の接続の確立と維持、および両者間のメッセージ交換を行います。
Oracle Net Servicesでは、Autonomous Databaseインスタンスに接続するための次のような様々な接続タイプがサポートされています:
-
JDBC Thinドライバ: Javaアプリケーションの場合、JDBC Thinドライバは純粋なJavaドライバです。 Oracle SQL Developerを含む多くのアプリケーションは、JDBC Thinドライバ接続をサポートします。
-
JDBC OCI: Java言語アプリケーションで使用されます。 JDBC OCIは、Javaアプリケーション用のレイヤーをOracle Call Interface上に追加します。 Oracle SQLclコマンドライン・インタフェースはJDBC OCIを使用します。
-
Oracle Call Interface (OCI): C言語で書かれた多くのアプリケーションで使用されます。 Oracle Call Interfaceを使用する例には、Oracle SQL*Plus、SQL*Loader、Oracle Data PumpなどのOracleユーティリティがあります。
-
ODBCドライバ: Oracle Call Interface (OCI)を重ねた、Microsoft Windowsで実行されているアプリケーションで使用されます。
サードパーティ製品およびカスタム・アプリケーションでは、これらの接続タイプのいずれかを使用できます。
トピック
- mTLSまたはTLSを使用したAutonomous Databaseへのセキュアな接続
Autonomous Databaseへの接続は、パブリック・インターネット、オプションでアクセス制御ルール(ACL)が定義されたもの、またはテナンシ内のVirtual Cloud Network (VCN)内のプライベート・エンドポイントを使用して行われます。 - ファイアウォールを介したAutonomous Databaseへの接続
ほとんどの組織は、ファイアウォールを使用してネットワーク上のネットワークとデバイスを保護します。 ファイアウォールは、特定のポートの使用および特定のコンピュータ(具体的にはIPアドレスまたはホスト名)へのアクセスを許可するルールを使用して、着信および発信ネットワーク・トラフィックを制御します。 ファイアウォールの重要な機能は、内部ネットワークと公共インターネットとを分離することです。 - アプリケーション・コンティニュイティの使用
アプリケーション・コンティニュイティ・マスクは、影響を受けるデータベース・セッションで停止後に処理中の作業をリカバリすることで、エンド・ユーザーおよびアプリケーションから停止します。 アプリケーション・コンティニュイティはアプリケーションの下でこのリカバリを実行して、停止が実行遅延としてアプリケーションに表示されます。
親トピック: Autonomous Databaseに接続
mTLSまたはTLSを使用したAutonomous Databaseへのセキュアな接続
Autonomous Databaseへの接続は、パブリック・インターネットを介して、オプションでアクセス制御ルール(ACL)が定義されているか、テナンシの仮想クラウド・ネットワーク(VCN)内のプライベート・エンドポイントを使用して行われます。
プライベート・エンドポイント構成を指定すると、指定した仮想クラウド・ネットワークからのトラフィックのみが許可され、すべてのパブリックIPまたはVCNからのデータベースへのアクセスがブロックされます。 プライベート・エンドポイントを構成すると、データベースとの間のすべてのトラフィックをパブリック・インターネットから分離できます。 プライベート・エンドポイントでは、パブリック・アクセスが「パブリック・アクセスの許可」で有効になっている場合、インスタンスにプライベート・エンドポイントとパブリック・エンドポイントの両方があります:
-
プライベート・ホスト名、エンドポイントURLおよびプライベートIPアドレスを使用すると、データベースが存在するVCNからデータベースに接続できます。
-
パブリック・ホスト名を使用すると、特定のパブリックIPアドレスから、または特定のVCN(サービス・ゲートウェイを使用してAutonomous Databaseにプライベート接続するように構成されている場合)からデータベースに接続できます。
多くのアプリケーションは複数の接続タイプをサポートしますが、Autonomous Databaseへの接続のタイプごとに、標準のTLS 1.2を使用した証明書認証およびTCPS (Secure TCP)データベース接続を使用します。 これにより、Autonomous Databaseへの不正アクセスがなく、クライアントとサーバー間の通信が完全に暗号化され、傍受または変更できなくなります。
Autonomous Databaseは、デフォルトで相互TLS (mTLS)接続をサポートしています(mTLSとの接続にはポート1522を使用します)。 mTLS接続とTLS接続の両方をサポートするようにAutonomous Databaseインスタンスを構成するオプションがあります(TLS接続にはポート1521または1522のいずれかを使用します)。
Autonomous DatabaseでTLS認証を使用するクライアントには、次のような利点があります:
-
TLS接続では、ウォレットをダウンロードする必要はありません。 JDK8以上のJDBC Thinドライバを使用したTLS接続の場合、ウォレットは必要ありません。 これには、SQL DeveloperやSQLコマンドライン(SQLcl)などのクライアントからの接続が含まれます。
-
TLSで接続しているクライアントは、ウォレットのローテーションについて心配する必要はありません。 ウォレットのローテーションは、mTLS接続の通常の手順です。
-
TLS接続が高速になることがあります(接続待機時間が短くなります)。 TLS認証により、mTLSと比較して接続待機時間が短縮されます。
-
TLSおよびmTLS接続は相互に排他的ではありません。 相互TLS (mTLS)認証はデフォルトで有効になっており、常に使用可能です。 TLS認証を有効にすると、mTLSまたはTLS認証のいずれかを使用できます。
-
TLS認証を使用しても、クライアントとAutonomous Databaseとの間の完全に暗号化されたエンド・ツー・エンド通信は損なわれません。
Autonomous DatabaseインスタンスのmTLS接続文字列の取得の詳細は、「Autonomous DatabaseインスタンスのTNS名および接続文字列の表示」を参照してください。
相互TLS (mTLS)認証について
Mutual Transport Layer Security (mTLS)を使用すると、クライアントは、標準のTLS 1.2を使用して、信頼できるクライアント認証局(CA)証明書を使用してTCPS (Secure TCP)データベース接続を介して接続します。
相互認証では、クライアント・アプリケーションとAutonomous Databaseの両方が相互に認証します。 Autonomous Databaseは、デフォルトでmTLS認証を使用します。 ポート1522を使用して、mTLSを使用してAutonomous Databaseインスタンスに接続します(1522ポートの割当ては変更できません)。
相互TLS認証では、クライアントがAutonomous Databaseインスタンスに接続するための信頼できるクライアントCA証明書をダウンロードまたは取得する必要があります。 Autonomous Databaseは、証明書を使用してクライアントを認証します。 これにより、セキュリティが向上し、Autonomous Databaseインスタンスと通信できるクライアントが指定されます。
相互TLSによる認証では、クライアント(アプリケーションが実行されている場所)とサーバー(Autonomous Database上のデータベース・サービスが実行されている場所)の両方でwalletに格納されている暗号化されたキーが使用されます。 接続するためには、クライアント上のキーがサーバー上のキーと一致する必要があります。 ウォレットには、Autonomous Databaseインスタンスへの接続に必要なキーやその他の情報を含むファイルのコレクションが含まれます。 クライアントとサーバー間のすべての通信は暗号化されます。
Autonomous Databaseインスタンスへの接続を保護するために、サービス管理者はクライアント資格証明(ウォレット・ファイル)をAutonomous Databaseからダウンロードします。 Autonomous Databaseサービス管理者でない場合は、管理者からクライアント資格証明が提供されます。 詳細については、「クライアント資格証明(ウォレット)のダウンロード」を参照してください。
次の図は、相互TLS接続を使用したパブリック・インターネットを介したOracle Autonomous Databaseへのクライアントのセキュアな接続を示しています。 プライベート・エンドポイントを使用するようにデータベースを構成すると、パブリック・インターネットは使用されず、接続ではテナンシの仮想クラウド・ネットワーク(VCN)内のプライベート・エンドポイントが使用されます。

「図autonomous-database.epsの説明」
Autonomous DatabaseインスタンスのmTLS接続文字列の取得の詳細は、「Autonomous DatabaseインスタンスのTNS名および接続文字列の表示」を参照してください。
TLS認証について
Transport Layer Security (TLS)を使用すると、クライアントは、標準のTLS 1.2を使用してTCPS (Secure TCP)データベース接続を介して接続します。 クライアントは、その信頼された認証局(CA)のリストを使用して、サーバーのCAルート証明書を検証します。 発行元CAが信頼されている場合、クライアントは証明書が認証されていることを確認します。
これにより、クライアントおよびAutonomous Databaseは、メッセージを交換する前に暗号化された接続を確立できます。 ポート1521または1522を使用して、TLSを使用してAutonomous Databaseインスタンスに接続します(これらのポート割当ては変更できません)。
JDBC Thinドライバ・クライアント(Oracle SQL DeveloperおよびOracle SQLclを含む)を使用してTLS認証に接続する場合、Autonomous Databaseインスタンスへの接続を保護するためにウォレットをダウンロードする必要はありません。 TLS認証により、クライアントはAutonomous Databaseサービスのアイデンティティを検証し、セキュアな通信を提供できます。
クライアントのタイプに応じて、TLS接続には次のAutonomous Databaseのサポートがあります:
-
Oracle SQL DeveloperおよびOracle SQLclとの接続など、JDK8u162以上のJDBC Thinドライバを使用した接続の場合、ウォレットは必要ありません。
-
次のクライアント・バージョンを使用している場合、Oracle Call Interface (OCI)クライアントは、ウォレットなしでTLS認証をサポートしています:
-
Oracle Instant Client/Oracle Databaseクライアント19.13 - Linux x64の場合のみ
-
Oracle Instant Client/Oracle Database Client 19.14 (以降)および21.5 (以降) - Linux x64およびWindowsでのみ
-
-
クライアントがTLS認証を使用して管理対象のODP.NETまたはODP.NETコア・バージョン19.13または21.4 (以上)で接続している場合、クライアントはウォレットを指定せずに接続できます。
TLS接続に対するネットワーク・アクセスの前提条件があります。 詳細については、「TLS接続のネットワーク・アクセスの前提条件」を参照してください。
Autonomous DatabaseインスタンスのTLS接続文字列の取得の詳細は、「Autonomous DatabaseインスタンスのTNS名および接続文字列の表示」を参照してください。
ファイアウォールを介したAutonomous Databaseへの接続
ほとんどの組織は、ファイアウォールを使用してネットワーク上のネットワークとデバイスを保護します。 ファイアウォールは、特定のポートの使用および特定のコンピュータ(具体的にはIPアドレスまたはホスト名)へのアクセスを許可するルールを使用して、着信および発信ネットワーク・トラフィックを制御します。 ファイアウォールの重要な機能は、内部ネットワークと公共インターネットとを分離することです。
Autonomous Databaseがパブリック・インターネットを使用してアクセスするように構成されている場合は、Autonomous Databaseサーバーへのアクセスを許可するようにファイアウォールを構成する必要があります。
ファイアウォールの内側からAutonomous Databaseにアクセスするには、接続内のサーバーに接続するときに、ファイアウォールがデータベース接続で指定されたポートの使用を許可する必要があります。 Autonomous Database mTLS接続にはポート1522を使用します(接続文字列のポート番号は、credentials ZIP
ファイルのtnsnames.ora
ファイルから確認できます)。 たとえば、次のtnsnames.ora
ファイルのport
の値を参照してください。
db2022adb_high = (description = (
address=(protocol=tcps)
(port=1522)
(host=adb.example.oraclecloud.com))
(connect_data=(service_name=example_high.adb.oraclecloud.com))
(security=(ssl_server_dn_match=yes)))
ファイアウォールは、ポート1522を使用して.oraclecloud.com
ドメイン内のサーバーにアクセスできるようにする必要があります。 Autonomous Databaseに接続するには、組織のネットワーク構成に応じて、プロキシ・サーバーを使用してこのポートにアクセスするか、ネットワーク管理者にこのポートを開くように依頼する必要があります。
Oracle Cloud InfrastructureのパブリックIPアドレス範囲の詳細は、「IPアドレス範囲」を参照してください。 パブリック・エンドポイントのAutonomous Databaseインスタンスへのアクセスを確保するには、これらのCIDRブロックへのトラフィックを許可する必要があります。
アプリケーション・コンティニュイティの使用
アプリケーション・コンティニュイティ・マスクは、影響を受けるデータベース・セッションで停止後に処理中の作業をリカバリすることで、エンド・ユーザーおよびアプリケーションから停止します。 アプリケーション・コンティニュイティはアプリケーションの下でこのリカバリを実行して、停止が実行遅延としてアプリケーションに表示されます。
ノート:
デフォルトでは、アプリケーション・コンティニュイティは無効です。アプリケーション・コンティニュイティの詳細は、「Autonomous Databaseでのアプリケーション・コンティニュイティの使用」を参照してください。