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

図autonomous-database.epsの説明
Autonomous DatabaseインスタンスのmTLS接続文字列の取得の詳細は、Autonomous DatabaseインスタンスのTNS名および接続文字列の表示を参照してください。
TLS認証について
Transport Layer Security (TLS)を使用すると、クライアントは、標準のTLS 1.2を使用してTCPS (セキュアTCP)データベース接続を介して接続できます。クライアントは、信頼された認証局(CA)のリストを使用してサーバーのCAルート証明書を検証します。発行元のCAが信頼できる場合、クライアントは証明書が本物であることを検証します。
これにより、クライアントとAutonomous Databaseは、メッセージを交換する前に暗号化された接続を確立することができます。ポート1521または1522を使用して、TLSを使用してAutonomous Databaseインスタンスに接続します(これらのポート割当ては変更できません)。
Oracle SQL DeveloperやOracle SQLclなどのJDBC Thinドライバ・クライアントを使用して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 Client 19.13 - Linux x64のみ
-
Oracle Instant Client/Oracle Database Client 19.14 (以上)、21.5 (以上)または23.1 (以上)
-
-
クライアントが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でのアプリケーション・コンティニュイティの使用を参照してください。