次の方法で共有


認証情報

データ ソースの資格情報は、コマンド間でキャッシュおよび再利用できます。 既定では、このキャッシュは %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 形式の資格情報テンプレートを生成します。 このコマンドを実行するには、拡張機能 を指定し、データ ソース情報する必要があります。 データ ソースで複数の認証の種類がサポートされている場合は、--authenticationKind / -ak オプションで使用する認証の種類を指定する必要があります。

出力テンプレートには、$$ コマンドに渡す前に置き換える必要がある <>$$ で識別されたプレースホルダー値があります。

たとえば、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 コマンドで使用される資格情報を格納します。 このコマンドを実行するには、拡張機能 を指定し、データ ソース情報する必要があります。 資格情報は、次の 3 つの方法のいずれかで設定できます。

  • JSON 形式の資格情報の使用。
  • 追加の設定 (AnonymousWindows) を必要としない認証の種類の自動資格情報。
  • 対話型モードの使用。

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 DesktopPower Query OAuth のドキュメントを参照してください。

--useLegacyBrowser オプションを使用すると、IE11 埋め込みブラウザー ウィンドウを強制的に実行できます。