Верительные грамоты
Учетные данные источника данных можно кэшировать и повторно использовать в командах. По умолчанию этот кэш хранится в локальном файле в %LOCALAPPDATA%/Microsoft/pqtest и зашифрован с помощью текущего ключа пользователя.
В качестве альтернативы локальному хранилищу файлов можно хранить учетные данные в Azure Key Vault. Этот параметр можно включить с помощью параметра --keyVault / -kv, указав имя хранилища ключей в качестве аргумента параметра и задать переменные среды, указанные в следующей таблице:
Заметка
При использовании Azure Key Vault учетные данные хранятся в виде одного двоичного объекта, а не отдельных секретов.
Переменная | Подробности | Образец |
---|---|---|
PQTEST_AZURE_CLIENT_ID | Идентификатор (GUID) для приложения Microsoft Entra ID, получившего разрешение на доступ к вашему хранилищу ключей. | a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 |
PQTEST_AZURE_CLIENT_SECRET | Секрет клиента для приложения Идентификатора Microsoft Entra. | <заполнитель секрета клиента> |
PQTEST_AZURE_TENANT_ID | Идентификатор (GUID) для клиента, которому принадлежит Azure Key Vault. | 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
Шаблон учетных данных
Эта команда позволяет создать шаблон учетных данных в формате JSON, который можно передать в команду set-credential. Команда требует предоставления расширения , и сведений об источнике данных. Если источник данных поддерживает несколько видов проверки подлинности, необходимо указать тип проверки подлинности, используемый с параметром --authenticationKind / -ak.
Выходной шаблон имеет значения заполнителей, идентифицированные с именем ключа $$<>$$, которые необходимо заменить перед передачей в команду set-credential.
Например, MyConnector
поддерживает типы проверки подлинности Anonymous и UsernamePassword.
Чтобы создать учетные данные Anonymous
, будет использоваться следующая команда:
<Path to PQTest.exe>.\PQTest.exe credential-template --extension MyConnector.mez --queryFile MyConnectorQuery.m --prettyPrint --authenticationKind Anonymous
Заметка
Выходное значение JSON не содержит никаких значений заполнителей, так как тип Anonymous
не требует никаких значений.
{
"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": []
}
Установить учетные данные
Используйте эту команду для хранения учетных данных, которые используются командами тестового подключения и запуска теста . Команда требует предоставления расширения и, а также сведений об источнике данных и. Учетные данные можно задать одним из трех способов:
- Использование учетных данных в формате JSON.
- Автоматические учетные данные для типов проверки подлинности, которые не требуют дополнительных параметров (
Anonymous
иWindows
). - Использование интерактивного режима.
Учетные данные в формате JSON
Любой тип учетных данных можно задать с помощью формата учетных данных JSON. Используйте команду шаблон учетных данных для создания json учетных данных.
При настройке учетных данных с помощью шаблона JSON входные данные должны быть переданы в команду или предоставлены из stdin
через файл.
Вот пример настройки учетных данных Anonymous
путем передачи результата команды credential-template в команду 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"
}
Заметка
Anonymous
и Windows
учетные данные можно задать с помощью автоматических учетных данных.
Ниже приведен пример настройки учетных данных из файла, хранящегося на диске (с использованием перенаправленных входных данных):
<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
учетные данные, заданные таким образом, по умолчанию используют удостоверение текущего пользователя. Используйте команду шаблона учетных данных для создания учетных данных в формате JSON, которые можно изменить для использования других учетных данных учетной записи Windows.
Чтобы создать учетные данные 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 Query OAuth для Power BI Desktop.
Параметр --useLegacyBrowser можно использовать для принудительного использования встроенного окна браузера IE11.