DSN の作成
このセクションでは、DSN 設定の編集方法と、Twitter API への認証および接続について説明します。
DSN 設定
Microsoft ODBC データソースアドミニストレーターを使ってDSN 設定を編集できます。インストールプロセスではコネクタのインストール で説明のとおり、ユーザーDSN とシステムDSN の両方が作成されることに注意してください。
Note: 本製品 は、接続情報をWindows レジストリに保存します。本製品 がレジストリに書き込めるようにするには、Power BI を管理者として実行するか、接続にシステムDSN ではなくユーザーDSN を使用します。
ユーザーDSN
DSN 設定を編集するには、次の手順を実行してください。
- スタート -> 検索 を選択し、検索ボックスにODBC データソース と入力します。
- Power BI Desktop インストールのビット数(32-bit または64-bit)に対応するODBC アドミニストレーターのバージョンを選択してください。
- システムデータソースを選択して構成をクリックします。
- 接続タブの情報を編集してOK をクリックします。
システムDSN
システムDSN をユーザーDSN と同じ方法で設定します。ただし、ステップ3を実行する前に、システムDSN タブに切り替える必要があります。
Power BI のOn-Premises Data Gateway をStandard モードで使用している場合、システムDSN を使用する必要があります。
OAuthSettingsLocation(OAuth のプロンプトが繰り返されるのを避けるため、OAuth 認証情報をローカルに保存するパス)にも有効な場所を指定する必要があります。
これは、Standard モードがサービスモードで動作し、C:\Windows\ServiceProfiles\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway のような許可された場所にしかアクセスできないためです。
Twitter への接続(OAuth)
NOTE: どのバージョンのOAuth を使用するかは、アクセスしたいテーブルやビューによって異なります。StreamRules テーブルおよびTweetStream ビューの場合は、OAuth 2.0 App-Only を使用する必要があります。その他のテーブルおよびビューの場合は、OAuth 1.1 を使用します。OAuth 2.0 App-Only(ベアラートークン)
StreamRules テーブルまたはTweetStream ビューの接続を確立するには、OAuth 2.0 App-Only 認証を使用する必要があります。まず、Twitter のウェブサイトでベアラートークンを生成します。YourBearerToken の値は、Twitter のDeveloper Portal > ProjectOfInterest > Keys and Tokens で生成されます。詳しくは、Twitter 開発者プラットフォームドキュメント を参照してください。
トークンの生成と以下の設定が完了したら、接続の準備は完了です。
- InitiateOAuth:OFF に設定。
- OAuthAccessToken:YourBearerToken の値に設定。
その他のテーブルやビュー(StreamRules とTweetStream 以外)にアクセスする場合は、以下のOAuth 1.1 の手順に従います。
OAuth 1.1
デスクトップアプリケーション
ユーザー資格情報の接続プロパティを設定せずに接続できます。または、カスタムOAuth アプリケーションを作成することも可能です。カスタムOAuth アプリケーションについて詳しくは、カスタムOAuth アプリの作成 を参照してください。2つの違いは、カスタムアプリケーションを使用する場合は追加の接続プロパティを設定する必要があることだけです。
以下を設定して、接続してください。
- OAuthClientId(カスタムアプリのみ):アプリ設定のコンシューマーキーに設定。
- OAuthClientSecret(カスタムアプリのみ):アプリケーション設定のコンシューマーシークレットに設定。
ヘッドレスマシン
ヘッドレスマシンのユーザーアカウントでOAuth を使用するようにドライバーを設定するには、インターネットブラウザに対応した別の端末で認証する必要があります。
- 以下のオプションから選択します。
- オプション1:後述の「Verifier code を取得および交換」に従い、OAuthVerifier 値を取得します。
- オプション2:インターネットブラウザに対応したマシンに本製品 をインストールし、後述の「OAuth 設定を転送」の説明に従い、通常のブラウザベースのフローで認証後にOAuth 認証値を転送します。
- 次に、ヘッドレスマシンからアクセストークンを自動的にリフレッシュするように本製品 を設定します。
オプション1:Verifier code を取得および交換
Verifier code を取得するには、OAuth Authorization URL で認証する必要があります。
インターネットブラウザに対応したマシンから認証してOAuthVerifier 接続プロパティを取得する方法は次のとおりです。
- 以下のオプションから選択します。
- 埋め込みOAuth アプリケーションを使用する場合は、GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。ストアドプロシージャによって返されたURL をブラウザで開きます。
- カスタムOAuth アプリケーションを使用するには、以下のプロパティを設定します。
- InitiateOAuth:OFF に設定。
- OAuthClientId:アプリ設定のクライアントId に設定。
- OAuthClientSecret:アプリ設定のクライアントシークレットに設定。
- ログインして、本製品 にアクセス許可を与えます。すると、verifier code を含むコールバックURL にリダイレクトされます。verifier code の値を保存します。後ほどこれをOAuthVerifier 接続プロパティに設定します。
ヘッドレスマシンでは、次の接続プロパティを設定してOAuth 認証値を取得します。
- InitiateOAuth:REFRESH に設定。
- OAuthVerifier:控えておいたverifier code(リダイレクトURI のcode パラメータの値)に設定。
- OAuthClientId:(カスタムアプリケーションのみ)OAuth アプリ設定にあるApp key の値に設定。
- OAuthClientSecret:(カスタムアプリケーションのみ)OAuth アプリ設定のApp secret に設定。
- AuthToken:GetOAuthAuthorizationURL ストアドプロシージャによって返された認証トークンに設定。
- AuthKey:GetOAuthAuthorizationURL ストアドプロシージャによって返された認証キーに設定。
- OAuthSettingsLocation:これを設定すると、暗号化されたOAuth 認証値が指定された場所に永続化されます。
接続をテストしてOAuth 設定ファイルを生成し、以下のプロパティを再設定して接続します。
- InitiateOAuth:REFRESH に設定。
- OAuthClientId:(カスタムアプリケーションのみ)OAuth アプリ設定にあるApp key の値に設定。
- OAuthClientSecret:(カスタムアプリケーションのみ)OAuth アプリ設定のApp secret に設定。
- OAuthSettingsLocation:暗号化されたOAuth 認証値を含む場所に設定。アクセストークンの自動リフレッシュを有効にするために、この場所が本製品 に読み書きのアクセス許可を与えることを確認してください。
オプション2:OAuth 設定を転送
ヘッドレスマシンでの接続に先立ち、インターネットブラウザに対応したデバイスでドライバーとの接続をインストールし、作成する必要があります。上述の「デスクトップアプリケーション」の説明に従って、接続プロパティを設定します。
「デスクトップアプリケーション」の手順が完了すると、生成された認証値は、OAuthSettingsLocation で指定された場所に暗号化されて書き込まれます。デフォルトのファイル名はOAuthSettings.txt です。
接続をテストしてOAuth 設定ファイルを生成し、OAuth 設定ファイルをヘッドレスマシンにコピーします。
ヘッドレスマシンで、次の接続プロパティを設定し、データに接続します。
- InitiateOAuth:REFRESH に設定。
- OAuthClientId:(カスタムアプリケーションのみ)OAuth アプリ設定にあるApp key の値に設定。
- OAuthClientSecret:(カスタムアプリケーションのみ)OAuth アプリ設定のApp secret に設定。
- OAuthSettingsLocation:ブラウザでマシンからコピーしたOAuth 設定ファイルの場所に設定。アクセストークンの自動リフレッシュを有効にするために、この場所が本製品 に読み書きのアクセス許可を与えることを確認してください。