Partager via


Informations d’identification

Les informations d’identification de la source de données peuvent être mises en cache et réutilisées entre les commandes. Par défaut, ce cache est stocké dans un fichier local sous %LOCALAPPDATA%/Microsoft/pqtest et chiffré avec la clé utilisateur actuelle.

En guise d’alternative au stockage de fichiers local, vous pouvez stocker les informations d’identification dans un Azure Key Vault. Vous pouvez activer cette option à l’aide de l’option --keyVault / -kv, en fournissant un nom de coffre de clés comme argument d’option et en définissant les variables d’environnement spécifiées dans le tableau suivant :

Note

Lors de l’utilisation d’Azure Key Vault, les informations d’identification sont stockées en tant qu’objet binaire unique, plutôt que sous forme de secrets individuels.

Variable Détails Échantillon
PQTEST_AZURE_CLIENT_ID ID (GUID) pour l’application Microsoft Entra ID autorisée à accéder à votre coffre de clés. a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
PQTEST_AZURE_CLIENT_SECRET Secret client pour votre application Microsoft Entra ID. <espace réservé-pour-le-secret-client>
PQTEST_AZURE_TENANT_ID ID (GUID) pour le locataire propriétaire d’Azure Key Vault. a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
PQTEST_AZURE_KEY_VAULT_URL URL du coffre de clés. https://<myvault>.vault.azure.net

Exemple d’utilisation de keyVault avec l’option :

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

Modèle-d'identifiants

Utilisez cette commande pour générer un modèle d’informations d’identification au format JSON qui peut être passé dans la commande set-credential. La commande nécessite que vous fournissiez une extension et des informations sur la source de données . Si la source de données prend en charge plusieurs types d’authentification, vous devez spécifier le type d’authentification à utiliser avec l’option --authenticationKind / -ak.

Le modèle de sortie présente des valeurs d’espace réservé, identifiées par un$$< nom de clé>$$, qui doivent être remplacées avant d'être transmises à la commande set-credential.

Par exemple, MyConnector prend en charge les types d’authentification Anonymous et UsernamePassword.

Pour générer des informations d’identification Anonymous, la commande suivante est utilisée :

<Path to PQTest.exe>.\PQTest.exe credential-template --extension MyConnector.mez --queryFile MyConnectorQuery.m --prettyPrint --authenticationKind Anonymous

Note

La valeur JSON de sortie ne contient aucune valeur d’espace réservé, car le type Anonymous n’en a pas besoin.

{
  "AuthenticationKind": "Anonymous",
  "AuthenticationProperties": {},
  "PrivacySetting": "None",
  "Permissions": []
}

La commande suivante permet de générer des informations d’identification UsernamePassword pour le même connecteur :

<Path to PQTest.exe>.\PQTest.exe credential-template --extension MyConnector.mez --queryFile MyConnectorQuery.m --prettyPrint --authenticationKind UsernamePassword

Le modèle résultant contient des valeurs d’espace réservé $$USERNAME$$ et $$PASSWORD$$.

{
  "AuthenticationKind": "UsernamePassword",
  "AuthenticationProperties": {
    "Username": "$$USERNAME$$",
    "Password": "$$PASSWORD$$"
  },
  "PrivacySetting": "None",
  "Permissions": []
}

Set-credential

Utilisez cette commande pour stocker les identifiants utilisés par les commandes test-connection et run-test. Cette commande vous oblige à fournir une extension et desinformations sur la source de données. Les informations d’identification peuvent être définies de trois façons :

  • Utilisation d’informations d’identification au format JSON.
  • Informations d’identification automatiques pour les types d’authentification qui ne nécessitent pas de paramètres supplémentaires (Anonymous et Windows).
  • Utilisation du mode interactif.

Informations d’identification au format JSON

N’importe quel type d’informations d’identification peut être défini à l’aide du format d’informations d’identification JSON. Utilisez la commande credential-template pour générer le json d’informations d’identification.

Lorsque vous définissez des informations d’identification à l’aide du modèle JSON, l’entrée doit être redirigée vers la commande ou fournie à partir de stdin via un fichier.

Voici un exemple de configuration d'une information Anonymousd'identification en dirigeant le résultat de la commande credential-template dans 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"
}

Note

Anonymous et Windows peuvent être définis à l’aide des identifiants automatiques .

Voici un exemple de définition d’informations d’identification à partir d’un fichier stocké sur le disque (à l’aide d’une entrée redirigée) :

<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"
}

Identifiants automatiques

Vous pouvez définir Anonymous et Windows informations d’identification sans fournir de modèle d’informations d’identification .

Note

Les informations d'identification Windows définies de cette manière utilisent par défaut l'identité de l'utilisateur actuel. Utilisez la commande modèle d’informations d’identification pour générer des informations d’identification JSON qui peuvent être modifiées pour utiliser d’autres informations d’identification de compte Windows.

Pour générer des informations d’identification Windows, la commande suivante est utilisée :

<Path to PQTest.exe>.\PQTest.exe set-credential -e MyConnector.mez -q MyConnectorQuery.m -p --authenticationKind windows

Pour générer des informations d’identification Anonymous, la commande suivante est utilisée :

<Path to PQTest.exe>.\PQTest.exe set-credential -e MyConnector.mez -q MyConnectorQuery.m -p --authenticationKind anonymous

Mode interactif

Les informations d’identification peuvent être définies à l’aide du mode interactif à l’aide de l’option de ligne de commande --interactive.

Le mode interactif peut être utilisé pour les types d’authentification OAuth et Aad. L’exécution de la commande dans ce mode présente une boîte de dialogue OAuth qui peut être utilisée pour tester votre implémentation OAuth.

Les flux OAuth interactifs utilisent le composant de navigateur WebView2 (Microsoft Edge Chromium), qui peut être installé séparément. Pour plus d’informations, consultez la documentation Power Query OAuth pour Power BI Desktop.

L’option --useLegacyBrowser peut être utilisée pour forcer une fenêtre de navigateur IE11 intégrée.