6.4. Red Hat Single Sign-On データソースの編集
JDBC ドライバーを宣言した後、Red Hat Single Sign-On が新しい外部データベースに接続するために使用する既存のデータソース設定を変更する必要があります。これは、JDBC ドライバーを登録したものと同じ設定ファイルと XML ブロック内で行います。新しいデータベースへの接続を設定する例を以下に示します。
JDBC ドライバーの宣言
<subsystem xmlns="urn:jboss:domain:datasources:5.0"> <datasources> ... <datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" enabled="true" use-java-context="true"> <connection-url>jdbc:postgresql://localhost/keycloak</connection-url> <driver>postgresql</driver> <pool> <max-pool-size>20</max-pool-size> </pool> <security> <user-name>William</user-name> <password>password</password> </security> </datasource> ... </datasources> </subsystem>
KeycloakDS
の datasource
定義を検索します。最初に connection-url
を変更する必要があります。ベンダーの JDBC 実装のドキュメントでは、この接続 URL 値の形式を指定する必要があります。
次に、使用する ドライバー
を定義します。これは、この章の前のセクションで宣言した JDBC ドライバーの論理名です。
トランザクションを実行するたびに、データベースへの新しい接続を開くにはコストがかかります。これを補うために、データソースの実装は開いている接続のプールを維持します。max-pool-size
は、プールする接続の最大数を指定します。システムの負荷に応じて、この値を変更することをお勧めします。
最後に、少なくとも PostgreSQL では、データベースに接続するために必要なデータベースのユーザー名とパスワードを定義する必要があります。この例で、これがクリアテキストであることが気になるかもしれません。これを難読化する方法はありますが、これはこのガイドの範囲を超えています。
データソース機能の詳細は、JBoss EAP 設定ガイドの データソースの設定 の章を参照してください。