各製品の資料を入手。
詳細はこちら →Okta JDBC ドライバーを使用したOBIEE でのOkta レポート
Okta JDBC ドライバーをOBIEE にデプロイし、企業全体にリアルタイムのレポートを提供します。
最終更新日:2022-05-27
この記事で実現できるOkta 連携のシナリオ
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
CData JDBC Driver for Okta は、Okta へのリアルタイムアクセスをJava ベースのレポートサーバーに統合できる標準のデータベースドライバーです。この記事では、ドライバーをOracle Business Intelligence Enterprise Edition (OBIEE) にデプロイし、変更を反映するOkta に関する方法を示します。
JDBC ドライバーをデプロイ
以下のステップに従って、WebLogic のクラスパスにJDBC ドライバーを追加します。
WebLogic 12.2.1 の場合、ドライバーJAR と.lic ファイルをORACLE_HOME\user_projects\domains\MY_DOMAIN\lib のようにDOMAIN_HOME\lib に配置します。これらのファイルは、起動時にサーバーのクラスパスに追加されます。
ドライバーをクラスパスに手動で追加することもできます。これは、以前のバージョンで必要です。setDomainEnv.cmd (Windows) または setDomainEnv.sh (Unix) のPRE_CLASSPATH の前に以下を追加します。このスクリプトは、そのドメインのフォルダーのbin サブフォルダーにあります。例:ORACLE_HOME\user_projects\domains\MY_DOMAIN\bin.
set PRE_CLASSPATH=your-installation-directory\lib\cdata.jdbc.okta.jar;%PRE_CLASSPATH%
DOMAIN_HOME\bitools\bin でstop コマンドとstart コマンドを実行するなど、すべてのサーバーを再起動します。
JDBC Data Source for Okta の作成
JDBC ドライバーをデプロイした後、BI Publisher からJDBC データソースを作成できます。
- BI Publisher にURL http://localhost:9502/analytics でログインし、[Administration]->[Manage BI Publisher]とクリックします。
- [JDBC Connection]->[Add Data Source]と進みます。
- 以下の情報を入力します。
- Data Source Name:ユーザーが接続を作成する名前をレポートに入力します。
- Driver Type:SELECTOther.
- Database DriverClass:ドライバークラスに cdata.jdbc.okta.OktaDriver を入力します。
- Connection String:JDBC URL を入力します。
Okta に接続するには、Domain 接続文字列プロパティをお使いのOkta ドメインに設定します。
Okta への認証にはOAuth を使用するため、カスタムOAuth アプリケーションを作成する必要があります。
カスタムOAuth アプリケーションの作成
Okta アカウントから:
- 管理者アカウントでOkta のデベロッパーエディションにサインインします。
- Admin Consoleで、Applications > Applications に移動します。
- Create App Integration をクリックします。
- Sign-in method は、OIDC - OpenID Connect を選択します。
- Application type は、Web Application を選択します。
- カスタムアプリケーションの名前を入力します。
- Grant TypeをAuthorization Code に設定します。トークンを自動的に更新したい場合は、Refresh Token もチェックしてください。
- コールバックURL を設定します。
- デスクトップアプリケーションやヘッドレスマシンでは、http://localhost:33333 または任意の別のポート番号を使用します。ここで設定したURI が、CallbackURL プロパティになります。
- Web アプリケーションの場合、コールバックURL を信頼できるリダイレクトURL に設定します。このURL は、アプリケーションへのアクセスが許可されたことを示すトークンを伴ってユーザーが戻ってくるWeb 上の場所です。
- Assignments セクションで、Limit access to selected groups を選択してグループを追加するか、グループの割り当ては一旦スキップします。
- OAuth アプリケーションを保存します。
- アプリケーションのGeneral タブに、アプリケーションのClient Id とClient Secret が表示されます。後で使用できるように、これらを記録してください。Client Id はOAuthClientId の設定に使用し、Client Secret はOAuthClientSecret の設定に使用します。
- Assignments タブを確認し、アプリケーションにアクセスする必要のあるすべてのユーザーがアプリケーションに割り当てられていることを確かめます。
- Okta API Scopes タブで、OAuth アプリケーションに付与するスコープを選択します。これらのスコープは、アプリが読み取り可能なデータを決定します。そのため、特定のビューに対するスコープを付与しないと、そのビューに対するクエリを実行する権限がドライバーに付与されません。各ビューに必要なスコープを確認するには、ヘルプドキュメントのデータモデル > ビュー のビュー固有のページを参照してください。
ビルトイン接続文字列デザイナ
JDBC URL の構成については、Okta JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.okta.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を構成する際に、Max Rows プロパティを定めることも可能です。これによって戻される行数を制限するため、可視化・レポートのデザイン設計時のパフォーマンスを向上させるのに役立ちます。
以下は一般的なJDBC URL です。
jdbc:okta:Domain=dev-44876464.okta.com;InitiateOAuth=GETANDREFRESH
- Username:ユーザー名。
- Password:パスワード。
- [Security]セクションで、許可されているユーザーロールを選択します。
リアルタイムのOkta レポートを作成
リアルタイムのOkta に基づいてレポートと分析を作成できるようになります。以下のステップに従って、標準のレポートウィザードを使用してOkta への変更を反映するインタラクティブなレポートを作成します。
- グローバルヘッダーで、[New]->[Data Model]をクリックします。
- Diagram タブでメニューからSQL クエリを選択します。
- クエリの名前を入力し、[Data Source]メニューで、作成したOkta JDBC データを選択します。
- 標準のSQL を選択し、以下のようなクエリを入力します。
SELECT Id, ProfileFirstName FROM Users WHERE Status = 'Active'
- [View Data]をクリックし、レポートの作成に使用するサンプルデータを生成します。
- サンプルデータに含める行数を選択し、[View]をクリックして[Save As Sample Data]をクリックします。
- [Create Report]->[Use Data Model]とクリックします。
- [Guide Me]を選択し、[Select Layout]ページで含めるレポートオブジェクトを選択します。この例では、[Chart]と[Table]を選択します。
- ProfileFirstName のような数値列をy 軸の[Drop Value Here]ボックスにドロップします。Id のようなディメンション列をx 軸の[Drop Label Here]ボックスにドロップします。
- [Refresh]をクリックしてOkta への変更を取得します。