Gateways - Update Datasource

Memperbarui kredensial sumber data yang ditentukan dari gateway yang ditentukan.

Kredensial sumber data Lokal harus dienkripsi, seperti yang dijelaskan dalam contoh kredensial terenkripsi lokal.

Lihat skrip PowerShell Kredensial Sumber Data Patch untuk contoh penggunaan API ini, skrip ini menggunakan skrip PowerShell yang disebutkan dalam catatan di bawah ini untuk mengenkripsi kredensial.

Nota

Saat mengubah dari akses menyeluruh ke jenis kredensial lain, seperti Basic atau OAuth2, atur parameter useEndUserOAuth2Credentials ke false seperti yang dijelaskan dalam contoh Kredensial dasar.

Kredensial OAuth 2.0 berlaku selama token yang disediakan valid. Saat menggunakan jenis kredensial OAuth 2.0, lakukan hal berikut:

  • Atur audiens token OAuth 2.0 dengan benar, sesuai dengan jenis sumber data.
  • Kirim token OAuth 2.0 dalam payload seperti yang ditunjukkan dalam contoh info masuk OAuth 2.0.
  • Jika Anda menggunakan sumber data Ekstensi , jangan atur useCallerAADIdentity ke true.

Permissions

Cakupan yang Diperlukan

Dataset.ReadWrite.All

Keterbatasan

  • Saat mengatur kredensial OAuth, token refresh tidak dimasukkan seperti saat mengatur kredensial melalui UI di layanan Power BI. Oleh karena itu, kredensial hanya dapat digunakan selama satu jam.
  • Gateway jaringan virtual (VNet) tidak didukung.
  • Kredensial Token SAS hanya didukung dengan AzureBlobStorage dan AzureDataLakeStorage.

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

Parameter URI

Nama Dalam Diperlukan Jenis Deskripsi
datasourceId
path True

string (uuid)

ID sumber data

gatewayId
path True

string (uuid)

ID gateway. Saat menggunakan kluster gateway, ID gateway mengacu pada gateway utama (pertama) di kluster. Dalam kasus seperti itu, ID gateway mirip dengan ID kluster gateway.

Isi Permintaan

Nama Diperlukan Jenis Deskripsi
credentialDetails True

CredentialDetails

Detail kredensial

Respons

Nama Jenis Deskripsi
200 OK

OK

Contoh

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

Anonymous credentials example

Permintaan sampel

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

Respon sampel

Basic credentials example

Permintaan sampel

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

Respon sampel

Key credentials example

Permintaan sampel

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

Respon sampel

KeyPair credentials example

Permintaan sampel

PATCH https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources/252b9de8-d915-4788-aaeb-ec8c2395f970
{
  "credentialDetails": {
    "credentialType": "KeyPair",
    "credentials": "{\"credentialData\":[{\"name\":\"username\",\"value\":\"some-user-name\"},{\"name\":\"privatekey\",\"value\":\"-----BEGIN PRIVATE KEY-----\\nSome-private-key\\n-----END PRIVATE KEY-----\"},{\"name\":\"passphrase\",\"value\":\"\"}]}",
    "encryptedConnection": "NotEncrypted",
    "encryptionAlgorithm": "None",
    "privacyLevel": "None"
  }
}

Respon sampel

OAuth 2.0 credentials example

Permintaan sampel

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

Respon sampel

On-premise encrypted credentials example

Permintaan sampel

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

Respon sampel

SAS Token credentials example

Permintaan sampel

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

Respon sampel

Definisi

Nama Deskripsi
CredentialDetails

Detail kredensial

credentialType

Jenis kredensial sumber data

encryptedConnection

Apakah akan mengenkripsi koneksi sumber data. Panggilan API akan gagal jika Anda memilih enkripsi dan Power BI tidak dapat membuat koneksi terenkripsi dengan sumber data.

encryptionAlgorithm

Algoritma enkripsi. Untuk sumber data cloud, tentukan None. Untuk sumber data lokal, tentukan RSA-OAEP dan gunakan kunci publik gateway untuk mengenkripsi kredensial.

privacyLevel

Tingkat privasi, yang relevan saat menggabungkan data dari beberapa sumber.

UpdateDatasourceRequest

Memperbarui sumber data ke permintaan gateway

CredentialDetails

Detail kredensial

Nama Jenis Deskripsi
credentialType

credentialType

Jenis kredensial

credentials

string

Kredensial, yang bergantung pada nilai 'credentialType'. Untuk informasi selengkapnya, lihat Memperbarui contoh Sumber Data .

encryptedConnection

encryptedConnection

Apakah akan mengenkripsi koneksi sumber data. Panggilan API akan gagal jika Anda memilih enkripsi dan Power BI tidak dapat membuat koneksi terenkripsi dengan sumber data.

encryptionAlgorithm

encryptionAlgorithm

Algoritma enkripsi. Untuk sumber data cloud, tentukan None. Untuk sumber data lokal, tentukan RSA-OAEP dan gunakan kunci publik gateway untuk mengenkripsi kredensial.

privacyLevel

privacyLevel

Tingkat privasi, yang relevan saat menggabungkan data dari beberapa sumber.

useCallerAADIdentity

boolean

Apakah identitas Azure AD (kredensial OAuth 2.0) pemanggil API (yang harus menjadi pemilik sumber data) akan digunakan untuk mengonfigurasi kredensial sumber data (token akses OAuth pemilik). Biasanya, Anda akan menggunakan bendera ini atau useEndUserOAuth2Credentials.

useEndUserOAuth2Credentials

boolean

Apakah identitas Azure AD pengguna akhir (kredensial OAuth 2.0) digunakan saat menyambungkan ke sumber data dalam mode DirectQuery. Gunakan dengan sumber data yang mendukung akses menyeluruh (SSO). Biasanya, Anda akan menggunakan bendera ini atau useCallerAADIdentity.

credentialType

Jenis kredensial sumber data

Nilai Deskripsi
Basic
Windows
Anonymous
OAuth2
Key
SAS
KeyPair

encryptedConnection

Apakah akan mengenkripsi koneksi sumber data. Panggilan API akan gagal jika Anda memilih enkripsi dan Power BI tidak dapat membuat koneksi terenkripsi dengan sumber data.

Nilai Deskripsi
Encrypted
NotEncrypted

encryptionAlgorithm

Algoritma enkripsi. Untuk sumber data cloud, tentukan None. Untuk sumber data lokal, tentukan RSA-OAEP dan gunakan kunci publik gateway untuk mengenkripsi kredensial.

Nilai Deskripsi
None
RSA-OAEP

privacyLevel

Tingkat privasi, yang relevan saat menggabungkan data dari beberapa sumber.

Nilai Deskripsi
None
Public
Organizational
Private

UpdateDatasourceRequest

Memperbarui sumber data ke permintaan gateway

Nama Jenis Deskripsi
credentialDetails

CredentialDetails

Detail kredensial