Gateways - Update Datasource
Met à 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.
Pour obtenir un exemple d’utilisation de cette API, consultez le script PowerShell Des informations d’identification des sources de données correctives , ce script utilise le script PowerShell mentionné dans la remarque ci-dessous pour chiffrer les informations d’identification.
Note
- Pour chiffrer les informations d’identification, consultez Configurer les informations d’identification par programmation pour Power BI et passer en revue les exemples EncryptCredentials .NET Core, Java, Python et PowerShell .
- Les informations d’identification Windows avant le chiffrement ressemblent aux informations d’identification de l’exemple d’informations d’identification de base.
Lorsque vous passez de l’authentification unique à d’autres types d’informations d’identification, tels que Basic ou , définissez le paramètre falseuseEndUserOAuth2Credentials comme décrit dans l’exemple d’informations d’identification de base.OAuth2
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 du 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 , n’avez pas la valeur
useCallerAADIdentitytrue.
Permissions
- 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. Utilisez des jeux de données : API de prise en charge pour transférer la propriété sur le jeu de données ou les rapports paginés spécifiés : API de prise en charge 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 des informations d’identification OAuth, un jeton d’actualisation n’est pas incorporé, car il est lors de la définition d’informations d’identification via l’interface utilisateur dans le 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 du 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 |
|---|---|---|---|---|
|
datasource
|
path | True |
string (uuid) |
ID de source de données |
|
gateway
|
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) du 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 |
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
Exemple de requête
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"
}
}
Exemple de réponse
Basic credentials example
Exemple de requête
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"
}
}
Exemple de réponse
Key credentials example
Exemple de requête
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"
}
}
Exemple de réponse
OAuth 2.0 credentials example
Exemple de requête
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"
}
}
Exemple de réponse
On-premise encrypted credentials example
Exemple de requête
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"
}
}
Exemple de réponse
SAS Token credentials example
Exemple de requête
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"
}
}
Exemple de réponse
Définitions
| Nom | Description |
|---|---|
|
Credential |
Détails des informations d’identification |
|
credential |
Type d’informations d’identification de la source de données |
|
encrypted |
Indique s’il faut chiffrer la connexion de source de données. L’appel d’API échoue si vous sélectionnez le chiffrement et Que Power BI n’est pas en mesure d’établir une connexion chiffrée avec la source de données. |
|
encryption |
Algorithme de chiffrement. Pour une source de données cloud, spécifiez |
|
privacy |
Niveau de confidentialité, qui est pertinent lors de la combinaison de données provenant de plusieurs sources. |
|
Update |
Une source de données de mise à jour de la demande de passerelle |
CredentialDetails
Détails des informations d’identification
| Nom | Type | Description |
|---|---|---|
| credentialType |
Type d’informations d’identification |
|
| credentials |
string |
Informations d’identification, qui dépendent de la valeur « credentialType ». Pour plus d’informations, consultez Mettre à jour des exemples de source de données . |
| encryptedConnection |
Indique s’il faut chiffrer la connexion de source de données. L’appel d’API échoue si vous sélectionnez le chiffrement et Que Power BI n’est pas en mesure d’établir une connexion chiffrée avec la source de données. |
|
| encryptionAlgorithm |
Algorithme de chiffrement. Pour une source de données cloud, spécifiez |
|
| 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 propriétaire). En règle générale, vous utiliseriez cet indicateur ou |
| 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 des sources de données qui prennent en charge l’authentification unique (SSO). En règle générale, vous utiliseriez cet indicateur ou |
credentialType
Type d’informations d’identification de la source de données
| Valeur | Description |
|---|---|
| Basic | |
| Windows | |
| Anonymous | |
| OAuth2 | |
| Key | |
| SAS |
encryptedConnection
Indique s’il faut chiffrer la connexion de source de données. L’appel d’API échoue si vous sélectionnez le chiffrement et Que Power BI n’est pas en mesure d’établir une connexion chiffrée avec la source de données.
| Valeur | Description |
|---|---|
| Encrypted | |
| NotEncrypted |
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.
| Valeur | Description |
|---|---|
| None | |
| RSA-OAEP |
privacyLevel
Niveau de confidentialité, qui est pertinent lors de la combinaison de données provenant de plusieurs sources.
| Valeur | Description |
|---|---|
| None | |
| Public | |
| Organizational | |
| Private |
UpdateDatasourceRequest
Une source de données de mise à jour de la demande de passerelle
| Nom | Type | Description |
|---|---|---|
| credentialDetails |
Détails des informations d’identification |