Amazon QuickSight で MySQL 接続を使用して PingOne のデータにアクセス

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
Amazon QuickSight で MySQL 接続を使用して PingOne に接続し、PingOne のデータ のビジュアライゼーションを構築する方法を紹介します。

Amazon QuickSight を使用すると、AWS データソース、アップロードしたファイル、クラウド上の他のデータベースからビジュアライゼーションの構築、分析の実行、インサイトの取得を素早く行うことができます。CData SQL Gateway と組み合わせることで、オンプレミスとクラウドの両方で 250種類以上のビッグデータ、NoSQL、SaaS ソースに対して同じ機能を利用できます。本記事では、SQL Gateway と CData ODBC Driver for PingOne を使用して、Amazon QuickSight の MySQL 接続経由でPingOne のデータにアクセスする方法を説明します。直接クエリを使用したリアルタイムアクセス、または SPICE へのデータインポートのどちらも可能です。

PingOne のデータに接続

まだ行っていない場合は、データソース名(DSN)で必要な接続プロパティの値を指定してください。組み込みの Microsoft ODBC データソースアドミニストレーターを使用して DSN を設定できます。これはドライバーインストールの最後のステップでもあります。Microsoft ODBC データソースアドミニストレーターを使用して DSN を作成・設定する方法については、ヘルプドキュメントの「はじめに」の章を参照してください。

PingOne に接続するには以下のプロパティを設定します。

  • Region:自身のPingOne 組織のデータがホスティングされている地域。
  • AuthScheme:PingOne に接続する際に使用する認証の種類。
  • WorkerAppEnvironmentId (デフォルトのPingOne ドメインを使用する場合に必要)、またはAuthorizationServerURL のいずれかで、下で説明するように設定します。

WorkerAppEnvironmentId の設定

WorkerAppEnvironmentId は、Worker アプリケーションが存在するPingOne 環境のID です。 このパラメータは、環境がデフォルトのPingOne ドメイン(auth.pingone)を利用している場合のみ使用されます。 これは、ヘルプドキュメントカスタムOAuth アプリケーションの作成で説明するように、PingOne への認証に使用するカスタムOAuth アプリケーションを作成した後に設定します。

はじめに、このプロパティの値を見つけます。

  1. 自身のPingOne 組織のホームページからナビゲーションサイドバーに移動し、Environments をクリックします。
  2. OAuth / Worker のカスタムアプリケーションを作成した環境(通常はAdministrators)を見つけ、Manage Environment をクリックします。 環境のホームページが表示されます。
  3. 環境のホームページのナビゲーションサイドバーで、Applications をクリックします。
  4. リストから、OAuth またはWorker アプリケーションの詳細を見つけます。
  5. Environment ID フィールドの値をコピーします。 以下の例に似たものになるはずです:
    WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'

次に、WorkerAppEnvironmentIdEnvironment ID フィールドの値に設定します。

AuthorizationServerURL の設定

AuthorizationServerURL は、お使いのアプリケーションが配置されている環境のPingOne 認可サーバーのベースURL です。 このプロパティは、PingOne プラットフォームAPI ドキュメントで説明されているように、環境にカスタムドメインを設定した場合にのみ使用されます。 Custom Domains を参照してください。

OAuth でのPingOne への認証

PingOne はOAuth とOAuthClient 認証の両方をサポートしています。 上述の設定手順に加え、OAuth またはOAuthCliet 認証をサポートするために、さらに2つの手順を完了する必要があります。

  • ヘルプドキュメントカスタムOAuth アプリケーションの作成で説明するように、カスタムOAuth アプリケーションを作成して設定します。
  • ドライバーがデータモデル内のエンティティにアクセスできるようにするには、ヘルプドキュメントのAdministrator Roles での説明のとおり、使用するアドミンユーザー / ワーカーアプリケーションに対して正しいロールを設定していることを確認してください。
  • 以下のサブセクションで説明されているように、選択した認証スキームと認証フローに適切なプロパティを設定します。

OAuth(認可コードグラント)

AuthSchemeOAuth に設定します。

デスクトップアプリケーション

OAuth アクセストークンの取得およびリフレッシュ

以下を設定して、接続してください。

  • InitiateOAuthGETANDREFRESH。繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要をなくすには、InitiateOAuth を使用します。
  • OAuthClientId:カスタムOAuth アプリケーションを作成した際に取得したClient ID。
  • OAuthClientSecret:カスタムOAuth アプリケーションを作成した際に取得したClient Secret。
  • CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。例:https://localhost:3333

接続すると、CData 製品 はデフォルトブラウザでPingOne のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。 ドライバーはこれでOAuth プロセスを完了します。

  1. ドライバーはPingOne からアクセストークンを取得し、それを使ってデータをリクエストします。
  2. OAuth 値はOAuthSettingsLocation で指定された場所に保存され、接続間で永続化されるようにします。

ドライバーはアクセストークンの期限が切れると自動的にリフレッシュします。

Web アプリケーションやヘッドレスマシン、クライアントクレデンシャルグラントを含むその他のOAuth メソッドについては、ヘルプドキュメントを参照してください。

DSN を設定する際に、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数を制限でき、レポートやビジュアライゼーションを設計する際のパフォーマンス向上に特に効果的です。

SQL Gateway を設定

SQL Gateway 概要を参照して、PingOne のデータ を仮想 MySQL データベースとして接続を設定してください。クライアントからの MySQL リクエストをリッスンする MySQL リモーティングサービスを設定します。サービスは SQL Gateway UI で設定できます。

SQL Gateway で MySQL リモーティングサービスを作成(Salesforce の例)

QuickSight から SQL Gateway に接続するには、インターネット接続可能なマシンで SQL Gateway を実行する必要があります。SQL Gateway を設定した後、以下の情報をメモしておいてください。

  • SQL Gateway をホストしているマシンの IP アドレスまたはドメイン名
  • MySQL サービスのデータソース名(通常は CData PingOne Sys)
  • MySQL サービスのポート番号
  • サービスへのアクセス権を持つ SQL Gateway ユーザーの資格情報

リモートアクセスの設定

ODBC Driver とリモーティングサービスがオンプレミスにインストールされている(Amazon QuickSight からアクセスできない)場合は、リバース SSH トンネリング機能を使用してリモートアクセスを有効にできます。詳細な手順については、Knowledge Base の記事「SQL Gateway SSH トンネリング機能」を参照してください。

QuickSight で PingOne に接続

PingOne ODBC Driver 用に MySQL サービスを設定したら、QuickSight でデータに接続する準備が整いました。QuickSight コンソールにログインし、「Manage Data」をクリックしてから「New Data Set」をクリックし、データソースとして MySQL を選択します。


SQL Gateway で設定した PingOne 用の MySQL サービスの値を使用してデータセットを設定します(データベース名には DSN を使用してください)。接続を検証し、「Create Data Source」をクリックします。


QuickSight で PingOne のデータを可視化

本記事では、データビジュアライゼーションにカスタム SQL クエリを使用します。「Edit/Preview Data」をクリックし、表示される Data Prep 画面で以下の手順に従います。

  1. データセットに名前を付けます(例:[CData].[Administrators].Users)。
  2. データを QuickSight SPICE にインポートする場合は SPICE オプションをクリックします。そうでない場合は、QuickSight がデータを直接クエリします。
  3. Tables メニューの下で「Switch to Custom SQL Tool」をクリックします。
    • SQL クエリに名前を付けます。
    • カスタム SQL クエリを入力します。例:
      SELECT Id, Username FROM [CData].[Administrators].Users
    • 「Finish」をクリックします。
  4. 「Save & Visualize」をクリックします。

データセットを保存したら、ビジュアライゼーションを設定できます。可視化するカラムを選択し、ビジュアルタイプを選択します。ビジュアライゼーションは、名前からデータの集計方法までカスタマイズできます。


CData ODBC Driver for PingOne と SQL Gateway を使用すると、Amazon QuickSight でPingOne のデータのデータビジュアライゼーションの構築や分析を簡単に行うことができます。オンプレミスのデータに AWS QuickSight からアクセスする方法など、ご質問がありましたらサポートチームまでお問い合わせください。

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

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

 ダウンロード

詳細:

PingOne Icon PingOne ODBC Driver お問い合わせ

PingOne ドライバーは、ODBC 接続をサポートする任意のアプリケーションからリアルタイムなPingOne アカウントデータに直接接続できるパワフルなツールです。標準のODBC ドライバーインタフェースを使用して、データベースのようにPingOne データにアクセスし、読み、書き、更新を実行できます。