ODBC Driver for Workday

Build 24.0.9062

Linux DSN の構成

このセクションでは、以下のいくつかのLinux ディストリビューションでODBC 接続をセットアップしDSN を設定する方法を説明します:Ubuntu のようなDebian ベースのシステム、Red Hat Enterprise Linux (RHEL)、およびFedora のようなRed Hat Linux プラットフォーム。

Linux の最小バージョン

Red Hat ベースおよびDebian ベースシステムでサポートされる最小バージョンは以下のとおりです。

OSMin. Version
Ubuntu18.04
Debian10
RHEL8
Fedora28
SUSE15

ドライバー依存関係のインストール

必要な依存関係をインストールするには、次のコマンドをルートとしてまたはsudo で実行します。

  • Debian/Ubuntu:
    apt-get install libc6 libstdc++6 zlib1g libgcc1
  • RHEL/Fedora:
    yum install glibc libstdc++ zlib libgcc

ドライバーのインストール

標準のパッケージ管理システムを使用してドライバーをインストールできます。

Ubuntu のようなDebian ベースのシステムでは、次のコマンドをroot またはsudo で実行します。

dpkg -i /path/to/driver/setup/WorkdayODBCDriverforUnix.deb 

RPM パッケージ形式をサポートするシステムでは、次のコマンドをroot またはsudo で実行します。

rpm -ivh /path/to/driver/WorkdayODBCDriverforUnix.rpm 

ドライバーのライセンス

次のコマンドを実行して本製品 のライセンスを取得します。評価版をアクティベートするには、<key> の入力を省略してください。

cd /opt/cdata/cdata-odbc-driver-for-workday/bin/
sudo ./install-license.sh <key>

ドライバーマネージャー経由の接続

ドライバーマネージャーはドライバーをロードし、アプリケーションからドライバーに関数呼び出しを渡します。本製品 をドライバーマネージャーに登録して、ドライバーマネージャーのコンフィギュレーションファイルにDSN を定義する必要があります。

本製品 のインストールでは、本製品 をunixODBC ドライバーマネージャーに登録し、システムDSN を作成します。UnixODBC ドライバーマネージャーは、Python やその他多くのアプリケーションから使用できます。アプリケーションに別のドライバーマネージャーが組み込まれている可能性があります。

DSN の作成

unixODBC をインストールしてDSN を設定するには、unixODBC の使用 を参照してください。OBIEE、Informatica、およびSAS に接続するDSN を作成するには、DataDirect ドライバーマネージャーの使用 を参照してください。

Workday への接続

このセクションでは、4つのWorkday API の接続パラメータを設定する方法、およびTenant とBaseURL を取得する方法について説明します。 各サービス(WQL、Reports、REST、SOAP)には独自のConnectionType があり、接続ごとに使用できる接続タイプは1つだけです。

必要なAPI のパラメータを設定し、カスタムOAuth および / またはAzure AD API クライアントを作成したら、接続の準備は完了です。

接続の前提条件

API 前提条件 接続パラメータ
WQL WQL サービスを有効化
(下記参照)
ConnectionTypeWQL
Reports as a Service カタログレポートの設定
データアクセスのファインチューニング を参照)
ConnectionTypeReports
REST 自動で有効化 ConnectionTypeREST
SOAP 自動で有効化 以下のWorkday SOAP API を参照

BaseURL およびTenant の取得

BaseURL およびTenant プロパティを取得するため、Workday にログインしてView API Clients を検索します。 この画面では、Workday はBaseURLTenant の両方を含むURL であるWorkday REST API Endpoint を表示します。

REST API Endpoint のフォーマットは、 https://domain.com/subdirectories/mycompany です。ここで、

  • https://domain.com/subdirectories/BaseURL です。
  • mycompany(URL の最後のスラッシュの後の部分)はTenant です。

例えば、REST API エンドポイントがhttps://wd3-impl-services1.workday.com/ccx/api/v1/mycompany の場合、 BaseURLhttps://wd3-impl-services1.workday.com であり、Tenantmycompany です。

WQL サービスを有効化

Workday WQL API を介して接続するには、はじめにWQL Service を有効にする必要があります。

  1. Workday を開きます。
  2. 検索バーで、View Domain を検索します。
  3. プロンプトにWorkday Query Language と入力します。
  4. Allowed Security Group Types のいずれかに、接続するユーザーが含まれていることを確認します。

Workday への認証

ほとんどのWorkday 接続で、認証のためにOAuth ベースのカスタムAPI クライアントアプリケーションを作成する必要があります。これには、ユーザーがAzure AD 資格情報を介して接続するエンタープライズインストールも含まれます。SOAP 経由で接続したい場合は、カスタムOAuth アプリケーションを必要としないBasic 認証を使用できます。

このセクションでは、両方の認証方法について説明します。

OAuth

このセクションでは、SSO のない環境でOAuth 標準を使用して認証する方法について説明します。この環境で認証を行う前に、カスタムAPI クライアントアプリケーションの作成 で説明するように、はじめにカスタムOAuth アプリケーションを作成する必要があります。

Note: これらはWorkday API への認証を容易にするため、このドキュメントではカスタムOAuth アプリケーションをカスタムAPI Clients として頻繁に参照します。

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

カスタムOAuth アプリケーションの資格情報を使用して認証するには、OAuth アクセストークンを取得し、更新する必要があります。これらを設定すると、接続の準備が整います。

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

  • InitiateOAuthGETANDREFRESHOAuthAccessToken を自動的に取得およびリフレッシュするために使用します。
  • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
  • OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。
  • CallbackURL:アプリケーションの登録時に定義されたリダイレクトURI。

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

アクセストークンの期限が切れたときは、本製品 は自動でアクセストークンをリフレッシュします。

ヘッドレスマシン

ヘッドレスマシンに置かれているリソースにログインする必要がある場合は、インターネットブラウザに対応した別の端末で認証する必要があります。 以下のいずれかの方法で行います。

  • オプション1:OAuthVerifier 値を取得します。
  • オプション2:インターネットブラウザに対応したマシンに本製品 をインストールし、通常のブラウザベースのフローで認証した後でOAuth 認証値を転送します。

オプション1またはオプション2を実行後、ヘッドレスマシンからアクセストークンを自動的にリフレッシュするようにドライバーを設定します。

オプション1:Verifier code を取得および交換

Verifier code を取得するには、OAuth Authorization URL で認証する必要があります。以下の手順に従います。

  1. インターネットブラウザに対応したマシンから認証してOAuthVerifier 接続プロパティを取得します。

    次のプロパティを設定します。

    • InitiateOAuthOFF
    • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
    • OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。

  2. GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。ストアドプロシージャは、カスタムOAuth アプリケーションが登録されたときに構築されたCallbackURL を返します。 (カスタムAPI クライアントアプリケーションの作成 を参照してください。)

    このURL をコピーして、新しいブラウザのタブに貼り付けます。

  3. ログインして、本製品 にアクセス許可を与えます。OAuth アプリケーションは、code というパラメータを付加したリダイレクトURI にリダイレクトします。このパラメータの値を控えておきます。OAuthVerifier 接続プロパティを設定するために、後で必要になります。

  4. OAuth verifier code をOAuth リフレッシュトークンおよびアクセストークンと交換します。ヘッドレスマシンでは、次の接続プロパティを設定してOAuth 認証値を取得します。

    • InitiateOAuthREFRESH
    • OAuthVerifier:控えておいたverifier code(リダイレクトURI のcode パラメータの値)。
    • OAuthSettingsLocation:暗号化されたOAuth 認証値を指定されたファイルに永続化。
    • OAuthClientId:カスタムOAuth アプリケーション設定のクライアントId。
    • OAuthClientSecret:カスタムOAuth アプリケーション設定のクライアントシークレット。

  5. 接続をテストしてOAuth 設定ファイルを生成します。

  6. 次のプロパティを再設定して、接続してください。

    • InitiateOAuthREFRESH
    • OAuthSettingsLocation:暗号化されたOAuth 認証値を含むファイル。アクセストークンの自動リフレッシュを有効にするには、このファイルが本製品 に読み書きのアクセス許可を与えることを確認してください。
    • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
    • OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。

オプション2:OAuth 設定を転送

ヘッドレスマシンでの接続に先立ち、インターネットブラウザに対応したデバイスでドライバーとの接続をインストールし、作成する必要があります。上述の「デスクトップアプリケーション」の説明に従って、接続プロパティを設定します。

「デスクトップアプリケーション」の手順が完了すると、生成された認証値は、OAuthSettingsLocation で指定されたパスに暗号化されて書き込まれます。デフォルトのファイル名はOAuthSettings.txt です。

接続をテストしてOAuth 設定ファイルを生成し、OAuth 設定ファイルをヘッドレスマシンにコピーします。

ヘッドレスマシンでデータに接続するには、次の接続プロパティを設定します。

  • InitiateOAuthREFRESH
  • OAuthSettingsLocation:ブラウザでマシンからコピーしたOAuth 設定ファイルへのパス。アクセストークンの自動リフレッシュを有効にするために、このファイルが本製品 に読み書きのアクセス許可を与えることを確認してください。
  • OAuthClientId:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントId。
  • OAuthClientSecret:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントシークレット。

標準ユーザーとして認証

Workday で標準ユーザーとして認証するには、カスタムAPI クライアントアプリケーションの作成 で説明するように、はじめにAPI クライアントを作成する必要があります。

API クライアントを設定したら、Workday 認証情報を使用して接続するために以下のプロパティを設定します。

標準OAuth ユーザー

  • ConnectionType および関連プロパティ
  • AuthSchemeOAuth
  • OAuthClientIdView API Client ページで取得したClient ID。
  • OAuthClientSecretView API Client ページで取得したClient Secret。パブリッククライアントを使う場合には、この値をブランクにします。
  • Tenant:アカウントのテナント。
  • BaseURLView API Clients ページにあるREST API Endpoint のベースURL。

AzureAD ユーザー

  • ConnectionType および関連プロパティ
  • AuthSchemeAzureAD
  • OAuthClientIdView API Client ページで取得したClient ID。
  • Tenant:アカウントのテナント。
  • BaseURLView API Clients ページにあるREST API Endpoint のベースURL。
  • SSOProperties:AzureTenant、AzureClientId、AzureClientSecret、Resource など、SSO に使用される Azure 固有のプロパティ。

ISU として認証

ISU として認証するには、カスタムAPI クライアントアプリケーションの作成 で説明するように、 はじめにAPI Client またはAPI Client for Integrations のいずれかを作成する必要があります。JWT bearer grant type を使用して、これらのクライアントのいずれかを作成できます。

適切なプロパティを設定したら、接続の準備は完了です。

API Client for Integrations

  • ConnectionType および関連プロパティ
  • AuthSchemeOAuthISU
  • OAuthClientIdView API Client ページで取得したClient ID。
  • OAuthClientSecretView API Client ページで取得したClient Secret。
  • OAuthRefreshTokenManage Refresh Tokens for Integrations ページで取得したリフレッシュトークン。
  • Tenant:アカウントのテナント。
  • BaseURLView API Clients ページにあるREST API Endpoint のベースURL。

API Client(JWT)

  • ConnectionType および関連プロパティ
  • AuthSchemeOAuthJWT
  • OAuthJWTCertType:証明書の種類。keytool または openssl pkcs12 で証明書を作成した場合、PFXFILE になります。
  • OAuthJWTCert:作成した証明書ファイルのパス。
  • OAuthJWTCertPassword:作成した証明書ファイルのパスワード。
  • OAuthJWTIssuerView API Client ページで取得したClient ID。
  • OAuthJWTSubject:使用しているISU のユーザー名。
  • Tenant:アカウントのテナント。
  • BaseURLView API Clients ページにあるREST API Endpoint のベースURL。

SOAP API

SOAP API を使用する接続では、WQL およびレポートサービスと同じ認証スキームがすべてサポートされます。また、カスタムAPI クライアントを設定する必要のないBasic 認証もサポートしています。

Basic 認証を使用するには、次の接続パラメータを設定します。

  • ConnectionTypeSOAP
  • AuthSchemeBasic
  • User:Workday ユーザーアカウント名。
  • Password:Workday ユーザーのパスワード。
  • Tenant:アカウントのテナント。
  • BaseURLView API Clients ページにあるREST API Endpoint のベースURL。

その他の認証方法は、WQL およびレポーティングサービスの場合と同じ方法で構成されます。

OAuth 値のリフレッシュ

本製品 は、ブラウザベースのOAuth 認証交換中に取得されたテンポラリーOAuth アクセストークンをリフレッシュできます。デフォルトでは、本製品 は暗号化されたトークンを、DSN に対応するodbc.ini ファイルに保存します。System DSN の場合、このodbc.ini ファイルへのアクセスを制限できます。

トークンの自動交換を有効にするには、本製品 にシステムodbc.ini への書き込みアクセス権を与えます。または、OAuthSettingsLocation 接続プロパティを、ドライバーが読み書きアクセス権を持つ別のファイルパスに設定することもできます。

    OAuthSettingsLocation=/tmp/oauthsettings.txt
    

OAuth 認証の依存関係のインストール

OAuth 認証標準は、認証するユーザーにWeb ブラウザを使用したWorkday との通信を要求します。最初のOAuth インタラクションがドライバーがインストールされている同じマシン上で行われる場合(例えばデスクトップアプリケーションの場合)、本製品 はデフォルトブラウザを立ち上げるxdg-open プログラムにアクセスする必要があります。

この依存関係を満たすには、パッケージマネージャーに対応するパッケージをインストールします。

Debian/Ubuntu PackageRHEL/Fedora PackageFile
xdg-utilsxdg-utilsxdg-open

ドライバーエンコーディングの設定

ODBC ドライバーは、ODBC ドライバーマネージャーで使用するエンコーディングを指定する必要があります。デフォルトでは、Unix 用のCData ODBC ドライバーはunixODBC と互換性のあるUTF-16 を使用するように設定されていますが、他のドライバーマネージャーでは代替エンコーディングが必要な場合があります。

また、ANSI ODBC API を使用するアプリケーションからODBC ドライバーを使用している場合は、ANSI コードページを設定する必要があります。例えば、ANSI アプリケーションに日本語の文字をインポートするには、設定ファイル'/opt/cdata/cdata-odbc-driver-for-workday/lib/cdata.odbc.workday.ini' でコードページを指定できます。

[Driver]
AnsiCodePage = 932

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 24.0.9062