各製品の資料を入手。
詳細はこちら →PyCharm でCData ODBC Driver を使ってOkta に接続
CData ODBC Driver を使用して、ODBC データソースとしてPyCharm からOkta に接続します。
最終更新日:2022-03-14
この記事で実現できるOkta 連携のシナリオ
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData ODBC Drivers は、ODBC ドライバーをサポートするあらゆる環境から利用可能です。本記事では、PyCharm からのCData ODBC Driver for Okta の利用を説明します。CData ODBC Deriver をデータソースとして設定する方法、データソースをクエリして結果を表示するためのPyCharm の簡単なコードを含みます。
はじめに、このチュートリアルではCData ODBC Driver for Okta とPyCharm が、既にインストールされていることを前提としています。
Pyodbc をプロジェクトに追加
以下のステップに従って、pyodbc モジュールをプロジェクトに追加します。
- [File]->[Settings]とクリックして[project settings]ウィンドウを開きます。
- [Project: YourProjectName]メニューから[Project Interpreter]をクリックします。
- pyodbc を追加するため、+ ボタンをクリックしてpyodbc と入力します。
- [Install Package]をクリックしてpyodbc をインストールします。

CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Okta をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにOkta のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてOkta の接続を設定、2.PyCharm 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとOkta への接続設定
まずは、本記事右側のサイドバーからOkta ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
これで、ODBC 接続文字列またはDSN で接続できます。お客様のOS でDSN を作成するためのガイドについては、CData ドライバードキュメントの[はじめに]セクションを参照してください。
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 アプリケーションに付与するスコープを選択します。これらのスコープは、アプリが読み取り可能なデータを決定します。そのため、特定のビューに対するスコープを付与しないと、そのビューに対するクエリを実行する権限がドライバーに付与されません。各ビューに必要なスコープを確認するには、ヘルプドキュメントのデータモデル > ビュー のビュー固有のページを参照してください。
以下はDSN の構文です。
[CData Okta Source]
Driver = CData ODBC Driver for Okta
Description = My Description
Domain = dev-44876464.okta.com
Okta へのクエリの実行
Cursor をインスタンス化し、Cursor クラスのexecute メソッドを使用してSQL ステートメントを実行します。
import pyodbc
cnxn = pyodbc.connect('DRIVER={CData ODBC Driver for Okta};Domain = dev-44876464.okta.com;')
cursor = cnxn.cursor()
cursor.execute("SELECT Id, ProfileFirstName FROM Users WHERE Status = 'Active'")
rows = cursor.fetchall()
for row in rows:
print(row.Id, row.ProfileFirstName)
CData ODBC Driver を使用してPyCharm でOkta に接続すると、Okta にアクセスできるPython アプリケーションを標準データベースのように構築できるようになります。このチュートリアルに関する質問、コメント、フィードバックがある場合には、support@cdata.com までご連絡ください。
Okta からPyCharm へのデータ連携には、ぜひCData ODBC ドライバをご利用ください
このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。