Oracle TLS データベース接続の設定

データベース用 Anypoint Connector (Database Connector) を使用すると、専用の Oracle 接続を介して Oracle データベースに安全に接続できます。

Oracle 接続では、次のセキュリティレベルを設定できます。

  • TCPS - セキュア TCP トンネル経由での接続 (推奨されません)

  • TLS - トラストストア検証のみ

  • mTLS - トラストストア検証とキーストア検証

  • mTLS - ユーザー名とパスワードなし (ロールは証明書で付与)

セキュア Oracle 接続を設定する

次の例は、Anypoint Studio でセキュアな Oracle 接続を設定する方法を示しています。

  1. Studio で、​[Global Elements (グローバル要素)]​ ビューに移動します。

  2. [Create (作成)]​ をクリックして、​[Choose Global Type (グローバル種別の選択)]​ ビューを開きます。

  3. [Filter (検索条件)]​ 項目に「​database​」と入力し、​[Database Config (データベース設定)]​ を選択して ​[OK]​ をクリックします。

  4. [Database Config (データベース設定)]​ ウィンドウの ​[Connection (接続)]​ 項目で ​[Oracle Connection (Oracle 接続)]​ を選択します。

  5. [Configure (設定)]​ をクリックし、必要な Oracle JDBC ドライバーを追加して、次のいずれかを選択します。

    • Use local file (ローカルファイルを使用)
      ローカルファイルを使用してライブラリをインストールします。

    • Add Maven dependency (Maven 連動関係を追加)
      Maven 連動関係をインストールしてプロジェクトに追加します。

  6. [Host (ホスト)]​ を ​localhost​、​[Port (ポート)]​ を ​1522​、​[User (ユーザー)]​ を ​system​、​[Password (パスワード)]​ を ​oracle​、​[Instance (インスタンス)]​/​[Service Name (サービス名)]​ を ​xe​ に設定します。

  7. [TLS]​ をクリックします。

  8. [Trust Store Configuration (トラストストア設定)]​ セクションで、次の項目を設定します。

    • Path (パス)​: <somePath>/client-truststore.jks

    • Password (パスワード)​: somepassword

    • ​: JKS

  1. [Key Store Configuration (キーストア設定)]​ セクションで、次の項目を設定します。

    • Path (パス)​: <somePath>/client-keystore.jks

    • Password (パスワード)​: somepassword

    • Key Password (キーパスワード)​: somepassword

      Java Secure Socket Extension (JSSE) のため、[Key Store Configuration (キーストア設定)] の ​[Password (パスワード)]​ と ​[Key Password (キーパスワード)]​ 項目に同じパスワード値を設定する必要があります。
    • ​: JKS

  2. [Test Connection (接続をテスト)]​ をクリックして、Mule がデータベースに接続できることを確認します。

  3. [OK]​ をクリックします。

次のスクリーンショットは、セキュア Oracle 接続の全般的な設定と TLS 設定のウィンドウです。

「Secure Oracle Connection General Configuration (セキュア Oracle 接続の全般的な設定)」 ウィンドウ

設定 XML​ エディターでは、​tls:context​ 設定は次のように記述されます。

	<db:config name="oracle-mtls-with-user-pass">
		<db:oracle-connection host="localhost" port="1522" user="system" password="oracle" serviceName="XE">
			<tls:context>
				<tls:trust-store path="<somePath>/client-truststore.jks" password="<somePassword>" type="jks"/>
				<tls:key-store path="<somePath>/client-keystore.jks" password="<somePassword>" keyPassword="<somePassword>" type="jks"/>
			</tls:context>
		</db:oracle-connection>
	</db:config>

セキュア Oracle 接続レベルの例

次の例は、各セキュア Oracle 接続レベルの XML 設定を示しています。

セキュア TCP トンネル経由での TCPS 接続

設定 XML​ エディターでは、設定は次のように記述されます。

	<db:config name="oracle-tcps">
		<db:oracle-connection host="localhost" port="1522" user="system" password="oracle" serviceName="XE" >
			<tls:context>
				<tls:trust-store insecure="true"/>
			</tls:context>
		</db:oracle-connection>
	</db:config>

トラストストア検証のみの TLS

設定 XML​ エディターでは、設定は次のように記述されます。

	<db:config name="oracle-tls-with-truststore-only">
		<db:oracle-connection host="localhost" port="1522" user="system" password="oracle" serviceName="XE" >
			<tls:context>
				<tls:trust-store path="<somePath>/client-truststore.jks" password="<somePassword>" type="jks"/>
			</tls:context>
		</db:oracle-connection>
	</db:config>

トラストストア検証とキーストア検証を使用する mTLS

設定 XML​ エディターでは、設定は次のように記述されます。

	<db:config name="oracle-mtls-with-user-pass">
		<db:oracle-connection host="localhost" user="system" password="oracle" port="1522" serviceName="XE">
			<tls:context>
				<tls:trust-store path="<somePath>/client-truststore.jks" password="<somePassword>" type="jks"/>
				<tls:key-store path="<somePath>/client-keystore.jks" password="<somePassword>" keyPassword="<somePassword>" type="jks"/>
			</tls:context>
		</db:oracle-connection>
	</db:config>

ユーザー名とパスワードを使用しない mTLS

この設定では、ロールは証明書によって付与されます。 設定 XML​ エディターでは、設定は次のように記述されます。

	<db:config name="oracle-mtls-with-user-pass">
		<db:oracle-connection host="localhost" port="1522" serviceName="XE">
			<tls:context>
				<tls:trust-store path="<somePath>/client-truststore.jks" password="<somePassword>" type="jks"/>
				<tls:key-store path="<somePath>/client-keystore.jks" password="<somePassword>" keyPassword="<somePassword>" type="jks"/>
			</tls:context>
		</db:oracle-connection>
	</db:config>