Partager via


Gateways - Update Datasource

Mises à jour les informations d’identification de la source de données spécifiée à partir de la passerelle spécifiée.

Les informations d’identification de la source de données locale doivent être chiffrées, comme décrit dans l’exemple d’informations d’identification chiffrées locales.

Notes

Lorsque vous passez de l’authentification unique à d’autres types d’informations d’identification, tels que Basic ou OAuth2, définissez le paramètre useEndUserOAuth2Credentialsfalse sur comme décrit dans l’exemple Informations d’identification de base.

Les informations d’identification OAuth 2.0 sont valides tant que le jeton fourni est valide. Lorsque vous utilisez le type d’informations d’identification OAuth 2.0, procédez comme suit :

  • Définissez correctement l’audience de jeton OAuth 2.0, en fonction du type de source de données.
  • Envoyez le jeton OAuth 2.0 dans la charge utile, comme indiqué dans l’exemple d’informations d’identification OAuth 2.0.
  • Si vous utilisez des sources de données d’extension , ne définissez pas sur useCallerAADIdentitytrue.

Autorisations

  • Avec les passerelles locales, l’utilisateur doit disposer d’autorisations d’administrateur de passerelle.
  • Avec les sources de données cloud, l’utilisateur doit être le propriétaire de la source de données. Utiliser Datasets - Take Over API pour transférer la propriété sur le jeu de données spécifié ou les rapports paginés - Take Over API pour transférer la propriété des sources de données sur le rapport paginé spécifié.
  • Cet appel d’API peut être appelé par un profil de principal de service. Pour plus d’informations, consultez Profils de principal de service dans Power BI Embedded.

Étendue requise

Dataset.ReadWrite.All

Limites

  • Lors de la définition d’informations d’identification OAuth, un jeton d’actualisation n’est pas incorporé tel qu’il est lors de la définition d’informations d’identification via l’interface utilisateur dans service Power BI. Par conséquent, les informations d’identification ne peuvent être utilisées que pendant une heure.
  • Les passerelles de réseau virtuel (VNet) ne sont pas prises en charge.
  • Les informations d’identification de jeton SAS sont prises en charge uniquement avec AzureBlobStorage et AzureDataLakeStorage.

PATCH https://api.powerbi.com/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}

Paramètres URI

Nom Dans Obligatoire Type Description
datasourceId
path True

string

uuid

ID de source de données

gatewayId
path True

string

uuid

ID de passerelle. Lors de l’utilisation d’un cluster de passerelle, l’ID de passerelle fait référence à la passerelle principale (première) dans le cluster. Dans ce cas, l’ID de passerelle est similaire à l’ID de cluster de passerelle.

Corps de la demande

Nom Obligatoire Type Description
credentialDetails True

CredentialDetails

Détails des informations d’identification

Réponses

Nom Type Description
200 OK

Ok

Exemples

Anonymous credentials example
Basic credentials example
Key credentials example
OAuth 2.0 credentials example
On-premise encrypted credentials example
SAS Token credentials example

Anonymous credentials example

Sample Request

PATCH https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources/252b9de8-d915-4788-aaeb-ec8c2395f970
{
  "credentialDetails": {
    "credentialType": "Anonymous",
    "credentials": "{\"credentialData\":\"\"}",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "None",
    "privacyLevel": "None"
  }
}

Sample Response

Basic credentials example

Sample Request

PATCH https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources/252b9de8-d915-4788-aaeb-ec8c2395f970
{
  "credentialDetails": {
    "credentialType": "Basic",
    "credentials": "{\"credentialData\":[{\"name\":\"username\", \"value\":\"john\"},{\"name\":\"password\", \"value\":\"*****\"}]}",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "None",
    "privacyLevel": "None",
    "useEndUserOAuth2Credentials": "False"
  }
}

Sample Response

Key credentials example

Sample Request

PATCH https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources/252b9de8-d915-4788-aaeb-ec8c2395f970
{
  "credentialDetails": {
    "credentialType": "Key",
    "credentials": "{\"credentialData\":[{\"name\":\"key\", \"value\":\"ec....LA=\"}]}",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "None",
    "privacyLevel": "None"
  }
}

Sample Response

OAuth 2.0 credentials example

Sample Request

PATCH https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources/252b9de8-d915-4788-aaeb-ec8c2395f970
{
  "credentialDetails": {
    "credentialType": "OAuth2",
    "credentials": "{\"credentialData\":[{\"name\":\"accessToken\", \"value\":\"eyJ0....fwtQ\"}]}",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "None",
    "privacyLevel": "None"
  }
}

Sample Response

On-premise encrypted credentials example

Sample Request

PATCH https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources/252b9de8-d915-4788-aaeb-ec8c2395f970
{
  "credentialDetails": {
    "credentialType": "Windows",
    "credentials": "AB....EF==",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "RSA-OAEP",
    "privacyLevel": "None"
  }
}

Sample Response

SAS Token credentials example

Sample Request

PATCH https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources/252b9de8-d915-4788-aaeb-ec8c2395f970
{
  "credentialDetails": {
    "credentialType": "SAS",
    "credentials": "{\"credentialData\":[{\"name\":\"token\", \"value\":\"sp=rl&st=2023-01-16T09:37:25Z&se=2023...J0%2F0YVkjKxPtEwsyn\"}]}",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "None",
    "privacyLevel": "None"
  }
}

Sample Response

Définitions

Nom Description
CredentialDetails

Détails des informations d’identification

credentialType

Type d’informations d’identification de source de données

encryptedConnection

Indique s’il faut chiffrer la connexion à la source de données. L’appel d’API échoue si vous sélectionnez chiffrement et que Power BI ne parvient pas à établir une connexion chiffrée avec la source de données.

encryptionAlgorithm

Algorithme de chiffrement. Pour une source de données cloud, spécifiez None. Pour une source de données locale, spécifiez RSA-OAEP et utilisez la clé publique de passerelle pour chiffrer les informations d’identification.

privacyLevel

Niveau de confidentialité, qui est pertinent lors de la combinaison de données provenant de plusieurs sources.

UpdateDatasourceRequest

Mise à jour d’une source de données vers une demande de passerelle

CredentialDetails

Détails des informations d’identification

Nom Type Description
credentialType

credentialType

Type d’informations d’identification

credentials

string

Les informations d’identification, qui dépendent de la valeur « credentialType ». Pour plus d’informations, consultez Exemples de mise à jour de source de données .

encryptedConnection

encryptedConnection

Indique s’il faut chiffrer la connexion à la source de données. L’appel d’API échoue si vous sélectionnez chiffrement et que Power BI ne parvient pas à établir une connexion chiffrée avec la source de données.

encryptionAlgorithm

encryptionAlgorithm

Algorithme de chiffrement. Pour une source de données cloud, spécifiez None. Pour une source de données locale, spécifiez RSA-OAEP et utilisez la clé publique de passerelle pour chiffrer les informations d’identification.

privacyLevel

privacyLevel

Niveau de confidentialité, qui est pertinent lors de la combinaison de données provenant de plusieurs sources.

useCallerAADIdentity

boolean

Indique si l’identité Azure AD (informations d’identification OAuth 2.0) de l’appelant d’API (qui doit être le propriétaire de la source de données) sera utilisée pour configurer les informations d’identification de la source de données (le jeton d’accès OAuth du propriétaire). En règle générale, vous utilisez cet indicateur ou useEndUserOAuth2Credentials.

useEndUserOAuth2Credentials

boolean

Indique si l’identité Azure AD de l’utilisateur final (informations d’identification OAuth 2.0) est utilisée lors de la connexion à la source de données en mode DirectQuery. Utilisez avec des sources de données qui prennent en charge l’authentification unique (SSO). En règle générale, vous utilisez cet indicateur ou useCallerAADIdentity.

credentialType

Type d’informations d’identification de source de données

Nom Type Description
Anonymous

string

Basic

string

Key

string

OAuth2

string

SAS

string

Windows

string

encryptedConnection

Indique s’il faut chiffrer la connexion à la source de données. L’appel d’API échoue si vous sélectionnez chiffrement et que Power BI ne parvient pas à établir une connexion chiffrée avec la source de données.

Nom Type Description
Encrypted

string

NotEncrypted

string

encryptionAlgorithm

Algorithme de chiffrement. Pour une source de données cloud, spécifiez None. Pour une source de données locale, spécifiez RSA-OAEP et utilisez la clé publique de passerelle pour chiffrer les informations d’identification.

Nom Type Description
None

string

RSA-OAEP

string

privacyLevel

Niveau de confidentialité, qui est pertinent lors de la combinaison de données provenant de plusieurs sources.

Nom Type Description
None

string

Organizational

string

Private

string

Public

string

UpdateDatasourceRequest

Mise à jour d’une source de données vers une demande de passerelle

Nom Type Description
credentialDetails

CredentialDetails

Détails des informations d’identification