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
- Aby zaszyfrować poświadczenia, zobacz Konfigurowanie poświadczeń programowo dla usługi Power BI i zapoznaj się z przykładami programu EncryptCredentials .NET Core, Java, Python i PowerShell .
- Poświadczenia systemu Windows przed szyfrowaniem wyglądają jak poświadczenia w przykładzie poświadczeń podstawowych.
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
- W przypadku bram lokalnych użytkownik musi mieć uprawnienia administratora bramy.
- W przypadku źródeł danych w chmurze użytkownik musi być właścicielem źródła danych. Użyj zestawów danych — przejmij własność interfejsu API do przeniesienia własności do określonego zestawu danych lub raportów podzielonych na strony — przejmij własność źródeł danych za pośrednictwem określonego raportu podzielonego na strony.
- To wywołanie interfejsu API może być wywoływane przez profil jednostki usługi. Aby uzyskać więcej informacji, zobacz: Profile jednostki usługi w usłudze Power BI Embedded.
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 |
|---|---|---|---|---|
|
datasource
|
path | True |
string (uuid) |
Identyfikator źródła danych |
|
gateway
|
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 |
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 |
|---|---|
|
Credential |
Szczegóły poświadczeń |
|
credential |
Typ poświadczeń źródła danych |
|
encrypted |
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. |
|
encryption |
Algorytm szyfrowania. W przypadku źródła danych w chmurze określ wartość |
|
privacy |
Poziom prywatności, który jest istotny podczas łączenia danych z wielu źródeł. |
|
Update |
Żądanie aktualizacji źródła danych do bramy |
CredentialDetails
Szczegóły poświadczeń
| Nazwa | Typ | Opis |
|---|---|---|
| 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 |
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ść |
|
| 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 |
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 |
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 |
Szczegóły poświadczeń |