Power BI Connector for ServiceNow

Build 25.0.9540

DSN の作成

このセクションでは、DSN 設定の編集方法と、ServiceNow API への認証および接続について説明します。

DSN 設定

Microsoft ODBC データソースアドミニストレーターを使ってDSN 設定を編集できます。インストールプロセスではコネクタのインストール で説明のとおり、ユーザーDSN とシステムDSN の両方が作成されることに注意してください。

Note: 本製品 は、接続情報をWindows レジストリに保存します。本製品 がレジストリに書き込めるようにするには、Power BI を管理者として実行するか、接続にシステムDSN ではなくユーザーDSN を使用します。

ユーザーDSN

DSN 設定を編集するには、次の手順を実行してください。

  1. スタート -> 検索 を選択し、検索ボックスにODBC データソース と入力します。
  2. Power BI Desktop インストールのビット数(32-bit または64-bit)に対応するODBC アドミニストレーターのバージョンを選択してください。
  3. システムデータソースを選択して構成をクリックします。
  4. 接続タブの情報を編集してOK をクリックします。

システムDSN

システムDSN をユーザーDSN と同じ方法で設定します。ただし、ステップ3を実行する前に、システムDSN タブに切り替える必要があります。

Power BI のOn-Premises Data Gateway をStandard モードで使用している場合、システムDSN を使用する必要があります。

OAuthSettingsLocation(OAuth のプロンプトが繰り返されるのを避けるため、OAuth 認証情報をローカルに保存するパス)、およびCredentialsLocation(MFA 認証情報ファイルをローカルに保存するパス)にも有効な場所を指定する必要があります。

これは、Standard モードがサービスモードで動作し、C:\Windows\ServiceProfiles\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway のような許可された場所にしかアクセスできないためです。

ServiceNow への接続

すべての接続にURL プロパティが必要です。このプロパティは、ServiceNow インスタンスのベースURL を指定します(例: https://MyInstance12345.service-now.com/)。

ServiceNow インスタンスの作成時に割り当てられた正確なURL を使用してください。ドライバーへの接続を成功させるには、このURL を接続文字列に含める必要があります。

ServiceNow への認証

ServiceNow は、Basic 認証、OAuth 標準による認証、JWT Bearer フローによるOAuth 認可、PASSWORD グラント種別によるOAuth 認証、シングルサインオン(SSO)ID プロバイダーによる認証をサポートします。

Basic

Basic 認証を使用するには、ServiceNow User およびPassword を提供する必要があります。

次の接続プロパティを設定すると、接続の準備が整います:

  1. AuthSchemeBASIC
  2. User:認証するBASIC ユーザー。
  3. Password:認証するユーザーのパスワード。
  4. URL:ServiceNow インスタンスサイトのベースURL。例:https://MyInstance12345.service-now.com/

OAuth

ServiceNow は、ユーザーがSSO 経由でログインしていない場合でBasic 認証も使用していない場合、すべての状況でOAuth 認証をサポートします。すべてのOAuth フローからこの認証を有効にするには、AuthSchemeOAuth に設定し、カスタムOAuth アプリケーションを作成する必要があります。これらのOAuth 値の他に、URLUser およびPassword の指定も必要です。

以下のサブセクションでは、3つの一般的な認証フローからServiceNow への認証方法について説明します。カスタムOAuth アプリケーションの作成方法については、カスタムOAuth アプリケーションの作成 を参照してください。

ServiceNow で利用可能な接続文字列プロパティの全リストは、Connection を参照してください。

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

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

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

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

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

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

OAuth アクセストークンの自動リフレッシュ:

本製品 がOAuth アクセストークンを自動的にリフレッシュするようにするには、次の手順を実行します:

  1. はじめてデータに接続する前に、次の接続パラメータを設定します:
  2. その後のデータ接続では、以下を設定します:

OAuth アクセストークンの手動リフレッシュ:

OAuth アクセストークンを手動でリフレッシュするために必要な唯一の値は、OAuth リフレッシュトークンです。

  1. ExpiresIn 期間(GetOAuthAccessToken が返す)が経過した後にOAuthAccessToken を手動でリフレッシュするには、RefreshOAuthAccessToken ストアドプロシージャを呼び出します。
  2. 次の接続プロパティを設定します:

    • OAuthClientId:カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId。
    • OAuthClientSecret:カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレット。

  3. RefreshOAuthAccessToken を呼び出し、OAuthRefreshToken にGetOAuthAccessToken によって返されたOAuth リフレッシュトークンを設定します。
  4. 新しいトークンが取得できたら、OAuthAccessToken プロパティにRefreshOAuthAccessToken によって返された値を設定します。これにより新しい接続が開かれます。

OAuth リフレッシュトークンを保存し、OAuth アクセストークンの有効期限が切れた後に手動でリフレッシュできるようにします。

ヘッドレスマシン

ヘッドレスマシンに存在するリソースにログインする必要がある場合は、 インターネットブラウザを備えた別のデバイスで認証する必要があります。以下のいずれかの方法で行うことができます:

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

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

オプション1:Verifier Code の取得および交換

Verifier code を取得するには、OAuth 認可URL で認証する必要があります。以下の手順を実行します:

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

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

    • InitiateOAuthOFF
    • OAuthClientId:カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId。
    • OAuthClientSecret:カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレット。

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

    この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:カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId。
    • OAuthClientSecret:カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレット。

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

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

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

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

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

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

OAuth JWT(JWT Bearer)

The OAuth 2.0 JWT Bearer flow enables authentication via private user key. The 本製品 signs a JWT with the user's private key and exchanges it for an access token at your instance's token endpoint.

To enable OAuth JWT, some configuration needs to be done at the ServiceNow server. Once that is complete, configuration properties are set for the 本製品.

ServiceNow Configuration
At the ServiceNow administration server, do the following:

  1. Create a JWT API endpoint and OAuth Application as described in ServiceNow Docs: Create a JWT API Endpoint.
  2. Upload your public key in ServiceNow and create a JWT verifier map that references the public key and associates it with the created OAuth App.
  3. Record the values you configure for issuer (iss), and subject (sub). The issuer claim is recomanded to match the value of the OAuthClientId, but if you have added a custom validation in your OAuth app set its value to the predefined value. The subject claim should be a user identifier, such as the user's mail that you want to associate the token with.
  4. (Optional:) To prevent replay attacks, enable JTI verification at the endpoint.

Driver configuration
When you connect, the 本製品 builds and signs a JWT using your certificate and posts it to your instance's token endpoint (for example, https://MyInstance12345.service-now.com/oauth_token.do) with grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer. The returned access token is then used for API requests. When the token expires, the 本製品 automatically gets a new token.

Required properties:

  • AuthScheme: OAuthJWT
  • URL: The base URL of the ServiceNow instance site. For example: https://MyInstance12345.service-now.com/.
  • OAuthClientId: The clientId.
  • OAuthClientSecret: The clientSecret.
  • OAuthJWTCert: Supplies the name of the client certificate's JWT Certificate store or the certificate file path based on the value specified in OAuthJWTCertType property.
  • OAuthJWTSubject: The sub (subject) claim. Should be a user identifier, the value should depend on the field selected from the user (sys_user) table in the OAuth configuration.

Optional properties:

  • OAuthJWTCertType: Identifies the type of key store containing the JWT Certificate.
  • OAuthJWTCertPassword: If the certificate/key is password-protected, supply the password.
  • OAuthJWTCertSubject: Identifies the subject of the OAuth JWT certificate used to locate a matching certificate in the store.
  • OAuthJWTIssuer: The iss (issuer) claim. It must match the value of the OAuthClientId property if you haven't added a custom validation in your OAuth app.
  • OAuthJWTHeaders: A collection of extra headers to include in the JWT. Here you should include the value of the kid of the JWT verifier map as follows: kid=mZYYrKx0aIkHlkmegY6cXhxC7hjg605v_dev
  • JTIClaimName: Override the claim name used for JWT uniqueness if your instance does not use jti.
  • OAuthJWTEncryption: The encryption algorithm to be used in JWT authentication.
  • OAuthJWTEncryptionKey: The key used for HMAC signatures with JWT tokens.
  • OAuthJWTValidityTime: How long the JWT should remain valid, in seconds.

PASSWORD グラント種別

When there is a trust relationship between the user and the application, the user can authenticate from the Desktop of Web via the PASSWORD grant type.

To authenticate via the PASSWORD grant type, set these properties:

  • AuthScheme: OAuthPassword.
  • InitiateOAuth: GETANDREFRESH. This avoids repeating the OAuth exchange and manually setting the OAuthAccessToken connection property.
  • OAuthClientId: The clientId that was assigned when you created your custom OAuth application..
  • OAuthClientSecret: The client secret that was assigned when you created your custom OAuth application.
  • Username: The authenticating user's username.
  • Password: The authenticating user's password.
  • URL: The base URL of your ServiceNow instance site.

When you connect, the 本製品 completes the OAuth process:

  1. Extracts the access token from the CallbackURL.
  2. Obtains a new access token when the old one expires.
  3. Saves OAuth values along with geolocation in OAuthSettingsLocation, which persists across connections.

シングルサインオンID プロバイダー

ServiceNow は、ADFS、Okta、OneLogin、PingFederate によるシングルサインオン(SSO)認証をサポートします。

ADFS

ADFS に接続するには、次のプロパティを設定します。

  • AuthSchemeADFS
  • User:認証するADFS ユーザー。
  • Password:認証するADFS ユーザーのパスワード。
  • SSOLoginURL:SSO プロバイダーのログインURL。

ADFS への認証を行うには、次のSSOProperties を設定します。

  • RelyingParty:ADFS サーバーのRelying Party Identifier の値。

接続文字列の例:

AuthScheme=ADFS;User=username;Password=password;SSOLoginURL='https://sts.company.com';SSOProperties='RelyingParty=https://saml.service-now.com';Url=https://MyInstance12345.service-now.com/;

ADFS 統合

ADFS 統合フローでは、現在ログインしているWindows ユーザーの資格情報で接続します。 ADFS 統合フローを使用するには、User およびPassword を指定せず、それ以外の設定は上記のADFS ガイドと同じ手順を実行してください。

Okta

Okta に接続するには、次のプロパティを設定します。

  • AuthSchemeOkta
  • User:認証するOkta ユーザー。
  • Password:認証するOkta ユーザーのパスワード。
  • SSOLoginURL:SSO プロバイダーのログインURL。

Okta クライアントリクエストコンテキストをオーバーライドする信頼されたアプリケーションまたはプロキシを使用する場合、またはMFA を設定している場合は、Okta を使用して認証するためにSSOProperties を組み合わせて使用する必要があります。必要に応じて、以下のいずれかを設定します。

  • APIToken:Okta クライアントリクエストコンテキストをオーバーライドする、信頼されたアプリケーションまたはプロキシ経由でユーザーを認証する場合、これを顧客がOkta 組織で作成したAPI Token に設定します。
  • MFAType:MFA フローを設定した場合、次の対応するタイプのいずれかに設定します:OktaVerifyEmail、またはSMS
  • MFAPassCode:MFA フローを設定した場合は、有効なパスコードに設定します。
    これを空欄または無効な値に設定した場合、本製品 はユーザーのデバイスまたはE メールにワンタイムパスワードチャレンジを発行します。パスコードを受信後、取得したワンタイムパスワードをMFAPassCode 接続プロパティに設定する接続を再度開きます。
  • MFARememberDevice:デフォルトはTrue です。Okta は、MFA が必要な場合にデバイスを記憶させることをサポートします。設定された認証ポリシーに従ってデバイスの記憶が許可されている場合、本製品 はMFA 認証の有効期間を延長するデバイストークンを送信します。MFA を記憶させない場合は、この 変数をFalse に設定してください。

接続文字列の例:

AuthScheme=Okta;SSOLoginURL='https://example.okta.com/home/appType/0bg4ivz6cJRZgCz5d6/46';User=oktaUserName;Password=oktaPassword;Url=https://MyInstance12345.service-now.com/;

OneLogin

OneLogin に接続するには、次のプロパティを設定します。

  • AuthSchemeOneLogin
  • User:認証するOneLogin ユーザー。
  • Password:認証するOneLogin ユーザーのパスワード。

OneLogin への認証を行うには、次のSSOProperties を設定します。

  • OAuthClientId:Developers -> API Credentials -> Credential -> ClientId を選択して取得できるOAuthClientId。
  • OAuthClientSecret:Developers -> API Credentials -> Credential -> ClientSecret を選択して取得できるOAuthClientSecret。
  • Subdomain:SSO アプリケーションにアクセスするOneLogin ユーザーのサブドメイン。例えば、OneLogin URL がsplinkly.onelogin.com の場合、splinkly がサブドメインの値です。
  • AppId:SSO アプリケーションのId。
  • リージョン(オプション):OneLogin アカウントで使用しているリージョン。有効な値はUS(デフォルト)またはEU です。

次の例の接続文字列はOneLogin への接続にAPI Key を使います:

AuthScheme=OneLogin;User=OneLoginUserName;Password=OneLoginPassword;SSOProperties='OAuthClientID=3fc8394584f153ce3b7924d9cd4f686443a52b;OAuthClientSecret=ca9257fd5cc3277abb5818cea28c06fe9b3b285d73d06;Subdomain=OneLoginSubDomain;AppId=1433920';Url=https://MyInstance12345.service-now.com/;

PingFederate

PingFederate に接続するには、次のプロパティを設定します。

  • AuthSchemePingFederate
  • User:認証するPingFederate ユーザー。
  • Password:認証するPingFederate ユーザーのパスワード。
  • SSOLoginURL:SSO プロバイダーのログインURL。
  • AWSRoleARN(オプション):複数のロールARN がある場合、認可に使用するものを指定します。
  • AWSPrincipalARN(オプション):複数のプリンシパルARN がある場合、認可に使用するものを指定します。
  • SSOProperties(オプション):Amazon S3 へのリクエストにユーザー名とパスワードを認可ヘッダーとして含めるには、RSBServiceNow_p_AuthSchemeBasic に設定します。

SSOLoginURL 用の相互SSL 認証(WS-Trust STS エンドポイント)を有効化するには、次の SSOProperties を設定します。

接続文字列の例:

AuthScheme=PingFederate;URL='https://dev103586.service-now.com';SSOLoginUrl='https://mycustomserver.com:9033/idp/sts.wst';User=admin;Password=PassValue123;

Copyright (c) 2026 CData Software, Inc. - All rights reserved.
Build 25.0.9540