Udostępnij przez


Gateways - Update Datasource

Aktualizuje poświadczenia określonego źródła danych z określonej bramy.

Poświadczenia lokalnego źródła danych muszą być szyfrowane zgodnie z opisem w przykładzie lokalnych zaszyfrowanych poświadczeń.

Aby zapoznać się z przykładem użycia tego interfejsu API, ten skrypt używa skryptu programu PowerShell wymienionego w poniższej notatce na potrzeby szyfrowania poświadczeń.

Uwaga / Notatka

W przypadku zmiany z logowania jednokrotnego na inne typy poświadczeń, takie jak Basic lub OAuth2, ustaw parametr useEndUserOAuth2Credentials na false zgodnie z opisem w przykładzie Podstawowe poświadczenia.

Poświadczenia protokołu OAuth 2.0 są prawidłowe, o ile podany token jest prawidłowy. W przypadku używania typu poświadczeń OAuth 2.0 wykonaj następujące czynności:

  • Ustaw poprawnie odbiorców tokenu OAuth 2.0 zgodnie z typem źródła danych.
  • Wyślij token OAuth 2.0 w ładunku, jak pokazano w przykładzie poświadczeń protokołu OAuth 2.0.
  • Jeśli używasz źródeł danych rozszerzenia , nie ustaw wartości useCallerAADIdentitytrue.

Permissions

Wymagany zakres

Dataset.ReadWrite.All

Ograniczenia

  • Podczas ustawiania poświadczeń protokołu OAuth token odświeżania nie jest uwzględniany tak, jak podczas ustawiania poświadczeń za pośrednictwem interfejsu użytkownika w usłudze Power BI. W związku z tym poświadczenia mogą być używane tylko przez jedną godzinę.
  • Bramy sieci wirtualnej nie są obsługiwane.
  • Poświadczenia tokenu SAS są obsługiwane tylko w przypadku usług AzureBlobStorage i AzureDataLakeStorage.

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

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
datasourceId
path True

string (uuid)

Identyfikator źródła danych

gatewayId
path True

string (uuid)

Identyfikator bramy. W przypadku korzystania z klastra bramy identyfikator bramy odwołuje się do bramy podstawowej (pierwszej) w klastrze. W takich przypadkach identyfikator bramy jest podobny do identyfikatora klastra bramy.

Treść żądania

Nazwa Wymagane Typ Opis
credentialDetails True

CredentialDetails

Szczegóły poświadczeń

Odpowiedzi

Nazwa Typ Opis
200 OK

OK

Przykłady

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

Przykładowe żądanie

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

Przykładowa odpowiedź

Basic credentials example

Przykładowe żądanie

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

Przykładowa odpowiedź

Key credentials example

Przykładowe żądanie

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

Przykładowa odpowiedź

OAuth 2.0 credentials example

Przykładowe żądanie

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

Przykładowa odpowiedź

On-premise encrypted credentials example

Przykładowe żądanie

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

Przykładowa odpowiedź

SAS Token credentials example

Przykładowe żądanie

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

Przykładowa odpowiedź

Definicje

Nazwa Opis
CredentialDetails

Szczegóły poświadczeń

credentialType

Typ poświadczeń źródła danych

encryptedConnection

Czy chcesz zaszyfrować połączenie ze źródłem danych. Wywołanie interfejsu API zakończy się niepowodzeniem, jeśli wybierzesz szyfrowanie, a usługa Power BI nie może nawiązać zaszyfrowanego połączenia ze źródłem danych.

encryptionAlgorithm

Algorytm szyfrowania. W przypadku źródła danych w chmurze określ wartość None. W przypadku lokalnego źródła danych określ RSA-OAEP klucz publiczny bramy i użyj go do zaszyfrowania poświadczeń.

privacyLevel

Poziom prywatności, który jest istotny podczas łączenia danych z wielu źródeł.

UpdateDatasourceRequest

Żądanie aktualizacji źródła danych do bramy

CredentialDetails

Szczegóły poświadczeń

Nazwa Typ Opis
credentialType

credentialType

Typ poświadczeń

credentials

string

Poświadczenia, które zależą od wartości "credentialType". Aby uzyskać więcej informacji, zobacz Update Datasource examples (Aktualizowanie przykładów źródła danych).

encryptedConnection

encryptedConnection

Czy chcesz zaszyfrować połączenie ze źródłem danych. Wywołanie interfejsu API zakończy się niepowodzeniem, jeśli wybierzesz szyfrowanie, a usługa Power BI nie może nawiązać zaszyfrowanego połączenia ze źródłem danych.

encryptionAlgorithm

encryptionAlgorithm

Algorytm szyfrowania. W przypadku źródła danych w chmurze określ wartość None. W przypadku lokalnego źródła danych określ RSA-OAEP klucz publiczny bramy i użyj go do zaszyfrowania poświadczeń.

privacyLevel

privacyLevel

Poziom prywatności, który jest istotny podczas łączenia danych z wielu źródeł.

useCallerAADIdentity

boolean

Określa, czy tożsamość usługi Azure AD (poświadczenia OAuth 2.0) obiektu wywołującego interfejs API (który musi być właścicielem źródła danych) będzie używana do konfigurowania poświadczeń źródła danych (tokenu dostępu właściciela protokołu OAuth). Zazwyczaj należy użyć tej flagi lub useEndUserOAuth2Credentials.

useEndUserOAuth2Credentials

boolean

Określa, czy tożsamość usługi Azure AD użytkownika końcowego (poświadczenia OAuth 2.0) jest używana podczas nawiązywania połączenia ze źródłem danych w trybie DirectQuery. Używaj z źródłami danych, które obsługują logowanie jednokrotne. Zazwyczaj należy użyć tej flagi lub useCallerAADIdentity.

credentialType

Typ poświadczeń źródła danych

Wartość Opis
Basic
Windows
Anonymous
OAuth2
Key
SAS

encryptedConnection

Czy chcesz zaszyfrować połączenie ze źródłem danych. Wywołanie interfejsu API zakończy się niepowodzeniem, jeśli wybierzesz szyfrowanie, a usługa Power BI nie może nawiązać zaszyfrowanego połączenia ze źródłem danych.

Wartość Opis
Encrypted
NotEncrypted

encryptionAlgorithm

Algorytm szyfrowania. W przypadku źródła danych w chmurze określ wartość None. W przypadku lokalnego źródła danych określ RSA-OAEP klucz publiczny bramy i użyj go do zaszyfrowania poświadczeń.

Wartość Opis
None
RSA-OAEP

privacyLevel

Poziom prywatności, który jest istotny podczas łączenia danych z wielu źródeł.

Wartość Opis
None
Public
Organizational
Private

UpdateDatasourceRequest

Żądanie aktualizacji źródła danych do bramy

Nazwa Typ Opis
credentialDetails

CredentialDetails

Szczegóły poświadczeń