データ ソースの資格情報は、コマンド間でキャッシュおよび再利用できます。 既定では、このキャッシュは %LOCALAPPDATA%/Microsoft/pqtest のローカル ファイルに格納され、現在のユーザー キーで暗号化
ローカル ファイル ストレージの代わりに、Azure Key Vaultに資格情報を格納できます。 このオプションを有効にするには、--keyVault / -kv オプションを使用し、オプション引数としてキー コンテナー名を指定し、次の表に示す環境変数を設定します。
手記
Azure Key Vault を使用する場合、資格情報は個々のシークレットではなく、単一のバイナリ オブジェクトとして格納されます。
| 変数 | 細部 | サンプル |
|---|---|---|
| PQTEST_AZURE_CLIENT_ID | キー コンテナーへのアクセスが承認された Microsoft Entra ID アプリケーションの ID (GUID)。 | a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 |
| PQTEST_AZURE_CLIENT_SECRET | Microsoft Entra ID アプリケーションのクライアント シークレット。 | <クライアントシークレットプレースホルダー> |
| PQTEST_AZURE_TENANT_ID | Azure Key Vault を所有するテナントの ID (GUID)。 | a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 |
| PQTEST_AZURE_KEY_VAULT_URL | キー コンテナーの URL。 | https://<myvault>.vault.azure.net |
keyVault オプションの使用例:
set PQTEST_AZURE_CLIENT_ID="a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
set PQTEST_AZURE_CLIENT_SECRET="<client-secret-placeholder>"
set PQTEST_AZURE_TENANT_ID="a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
set PQTEST_AZURE_KEY_VAULT_URL="https://myvault.vault.azure.net"
<Path to PQTest.exe>.\PQTest.exe list-credential --keyVault secretName
資格テンプレート
このコマンドを使用して、の set-credential コマンドに渡すことができる JSON 形式の資格情報テンプレートを生成します。 このコマンドを実行するには、
出力テンプレートには、$$ コマンドに渡す前に置き換える必要がある <>$$ で識別されたプレースホルダー値があります。
たとえば、MyConnector は匿名認証と UsernamePassword 認証の両方の種類をサポートします。
Anonymous 資格情報を生成するには、次のコマンドを使用します。
<Path to PQTest.exe>.\PQTest.exe credential-template --extension MyConnector.mez --queryFile MyConnectorQuery.m --prettyPrint --authenticationKind Anonymous
手記
Anonymous の種類では何も必要ないので、出力 JSON 値にはプレースホルダー値は含まれません。
{
"AuthenticationKind": "Anonymous",
"AuthenticationProperties": {},
"PrivacySetting": "None",
"Permissions": []
}
次のコマンドを使用して、同じコネクタの UsernamePassword 資格情報を生成します。
<Path to PQTest.exe>.\PQTest.exe credential-template --extension MyConnector.mez --queryFile MyConnectorQuery.m --prettyPrint --authenticationKind UsernamePassword
結果のテンプレートには、$$USERNAME$$ と $$PASSWORD$$ のプレースホルダー値が含まれています。
{
"AuthenticationKind": "UsernamePassword",
"AuthenticationProperties": {
"Username": "$$USERNAME$$",
"Password": "$$PASSWORD$$"
},
"PrivacySetting": "None",
"Permissions": []
}
認証情報を設定
このコマンドを使用して、の test-connection コマンドと の run-test コマンドで使用される資格情報を格納します。 このコマンドを実行するには、
- JSON 形式の資格情報の使用。
- 追加の設定 (
AnonymousとWindows) を必要としない認証の種類の自動資格情報。 - 対話型モードの使用。
JSON 形式の資格情報
JSON 資格情報形式を使用して、任意の資格情報の種類を設定できます。 資格情報 JSON を生成するには、credential-template コマンド を使用します。
JSON テンプレートを使用して資格情報を設定する場合は、入力をコマンドにパイプするか、ファイル経由で stdin から指定する必要があります。
Anonymous コマンドの結果を set-credential にパイプして、 資格情報を設定する例を示します。
<Path to PQTest.exe>.\PQTest.exe credential-template -e MyConnector.mez -q MyConnectorQuery.m -p -ak Anonymous | pqtest set-credential -e MyConnector.mez -q MyConnectorQuery.m -p
{
"Details": {
"Kind": "MyConnector",
"Path": "MyConnector",
"NormalizedPath": "MyConnector",
"IsDefaultForKind": false
},
"Message": "Successfully set credential",
"Status": "Success"
}
手記
(リダイレクトされた入力を使用して) ディスクに格納されているファイルから資格情報を設定する例を次に示します。
<Path to PQTest.exe>.\PQTest.exe set-credential -e MyConnector.mez -q MyConnectorQuery.m -p < mySavedCredential.json
{
"Details": {
"Kind": "MyConnector",
"Path": "MyConnector",
"NormalizedPath": "MyConnector",
"IsDefaultForKind": false
},
"Message": "Successfully set credential",
"Status": "Success"
}
自動資格情報
Anonymousを指定しなくても、Windows と の資格情報を設定できます。
手記
この方法で設定された Windows の資格情報は、既定で現在のユーザーの ID を使用します。
credential-template コマンド を使用して、代替の Windows アカウント資格情報を使用するように変更できる JSON 資格情報を生成します。
Windows 資格情報を生成するには、次のコマンドを使用します。
<Path to PQTest.exe>.\PQTest.exe set-credential -e MyConnector.mez -q MyConnectorQuery.m -p --authenticationKind windows
Anonymous 資格情報を生成するには、次のコマンドを使用します。
<Path to PQTest.exe>.\PQTest.exe set-credential -e MyConnector.mez -q MyConnectorQuery.m -p --authenticationKind anonymous
対話型モード
資格情報は、--interactive コマンド ライン オプションを使用して対話型モードを使用して設定できます。
対話型モードは、OAuth および Aad 認証の種類に使用できます。 このモードでコマンドを実行すると、OAuth の実装をテストするために使用できる OAuth ダイアログが表示されます。
対話型 OAuth フローでは、WebView2 (Microsoft Edge Chromium) ブラウザー コンポーネントが使用されます。これは、個別にインストールする必要がある場合があります。
詳細については、Power BI Desktop
--useLegacyBrowser オプションを使用すると、IE11 埋め込みブラウザー ウィンドウを強制的に実行できます。