WebLogic のコネクションプールからOktaに接続

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
CData JDBC Driver for Okta を使用して、WebLogic 上で動作するWeb アプリケーションからOkta のデータ に接続します。

CData JDBC Driver for Okta を使えば、標準的な手順に沿ってOkta のデータ をJava Web アプリケーションに統合できます。この記事では、CData JDBC Driver for Okta をWebLogic Server にデプロイする方法を説明します。

WebLogic Server へのJDBC ドライバーのデプロイ

ドライバーをデプロイするには、ドライバーJAR をクラスパスに追加します。.lic ファイルは、JAR と同じフォルダに配置する必要があります。 これらのファイルは、インストールディレクトリのlib サブフォルダに格納されています。

すべてのドメインにドライバーを追加する場合は、WL_HOME\common\bin\commEnv.cmd/sh にあるWEBLOGIC_CLASSPATH 環境変数の先頭にJAR のパスを追加します。このスクリプトは WL_HOME\common\bin\ にあります。以下に例を示します。

set WEBLOGIC_CLASSPATH=your-installation-directory\lib\cdata.jdbc.okta.jar;%WEBLOGIC_CLASSPATH%

WebLogic 12.2.1 では、特定のドメインにドライバーを追加する場合、ドライバーJAR と.lic ファイルをDOMAIN_HOME\lib(例:ORACLE_HOME\user_projects\domains\MY_DOMAIN\lib)に配置するだけで済みます。これらのファイルは、起動時にサーバーのクラスパスに追加されます。

以前のバージョンでは、手動でドライバーをクラスパスに追加する必要があります。setDomainEnv.cmd/sh のPRE_CLASSPATH 環境変数の先頭に、以下の内容を追加します。このスクリプトは、対象ドメインのフォルダのbin サブフォルダにあります。

set PRE_CLASSPATH=your-installation-directory\lib\cdata.jdbc.okta.jar;%PRE_CLASSPATH%

これらの変更を行った後、サーバーを再起動します。

Okta 用JDBC データソースの作成

ドライバーをデプロイしたら、WebLogic 管理コンソールにログインして接続を作成します。

  1. ドメイン構造ツリーで、Services -> Data Sources -> New -> Generic Data Source をクリックします。
  2. JDBC Data Source Properties ページで、以下の情報を入力します。
    • Name: ユーザーフレンドリーな名前を入力します(例:oktajdbc)。
    • JNDI Name: JDBC データソースのバインド先のパスを入力します(例:jdbc/Okta)。
    • Database Type: Other を選択します。

  3. Next をクリックしてデフォルトオプションを使用します。最後のページで、以下の情報を入力してTest Configuration をクリックします。

    • Driver Class Name: ドライバークラスを入力します(cdata.jdbc.okta.OktaDriver)。
    • URL: JDBC URL を入力します。一般的なJDBC URL は次のとおりです。

      jdbc:okta:Domain=dev-44876464.okta.com;

      Okta に接続するには、Domain 接続文字列プロパティをお使いのOkta ドメインに設定します。 Okta はOAuth およびOAuthJWT 認証をサポートしています。

      OAuth認証

      OAuth で認証するには、AuthSchemeOAuth に設定する必要があります。また、カスタムOAuth アプリケーションを作成する必要があります。

      カスタムOAuth アプリケーションの作成

      Okta アカウントから:

      1. 管理者アカウントでOkta のデベロッパーエディションにサインインします。
      2. Admin Consoleで、Applications > Applications に移動します。
      3. Create App Integration をクリックします。
      4. Sign-in method は、OIDC - OpenID Connect を選択します。
      5. Application type は、Web Application を選択します。
      6. カスタムアプリケーションの名前を入力します。
      7. Grant TypeをAuthorization Code に設定します。トークンを自動的に更新したい場合は、Refresh Token もチェックしてください。
      8. コールバックURL を設定します。
        • デスクトップアプリケーションやヘッドレスマシンでは、http://localhost:33333 または任意の別のポート番号を使用します。ここで設定したURI が、CallbackURL プロパティになります。
        • Web アプリケーションの場合、コールバックURL を信頼できるリダイレクトURL に設定します。このURL は、アプリケーションへのアクセスが許可されたことを示すトークンを伴ってユーザーが戻ってくるWeb 上の場所です。
      9. Assignments セクションで、Limit access to selected groups を選択してグループを追加するか、グループの割り当ては一旦スキップします。
      10. OAuth アプリケーションを保存します。
      11. アプリケーションのGeneral タブに、アプリケーションのClient Id とClient Secret が表示されます。後で使用できるように、これらを記録してください。Client Id はOAuthClientId の設定に使用し、Client Secret はOAuthClientSecret の設定に使用します。
      12. Assignments タブを確認し、アプリケーションにアクセスする必要のあるすべてのユーザーがアプリケーションに割り当てられていることを確かめます。
      13. Okta API Scopes タブで、OAuth アプリケーションに付与するスコープを選択します。これらのスコープは、アプリが読み取り可能なデータを決定します。そのため、特定のビューに対するスコープを付与しないと、そのビューに対するクエリを実行する権限がドライバーに付与されません。各ビューに必要なスコープを確認するには、ヘルプドキュメントのデータモデル > ビュー のビュー固有のページを参照してください。

      OAuth 認証の詳細や、OAuthJWT 認証については、ヘルプドキュメントを参照してください。

      組み込みの接続文字列デザイナー

      JDBC URL の作成には、Okta JDBC Driver に組み込まれている接続文字列デザイナーを使用できます。JAR ファイルをダブルクリックするか、コマンドラインからjar ファイルを実行します。

      java -jar cdata.jdbc.okta.jar
      

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    • Database User Name: JDBC URL で指定していない場合は、ユーザー名を入力します。
    • Password: JDBC URL で指定していない場合は、パスワードを入力します。

JDBC データソースをデプロイするサーバーを選択すると、Okta のデータ に接続できるようになります。

その他のWebLogic 連携

上記の手順では、シンプルなコネクションプーリングシナリオでのドライバー設定方法を説明しました。その他のユースケースや詳細については、Oracle Fusion Middleware ドキュメントのWebLogic Data Sources 章のJDBC セクションを参照してください。

はじめる準備はできましたか?

Okta Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Okta Icon Okta JDBC Driver お問い合わせ

Okta データと連携するパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。