共用方式為


Gateways - Update Datasource

更新指定閘道中指定資料來源的認證。

內部部署資料來源認證必須加密,如 內部部署加密認證範例中所述。

注意

從單一登入變更為其他認證類型時,例如 BasicOAuth2 ,請將 參數 useEndUserOAuth2Credentials 設定為 false ,如 基本認證範例中所述。

只要提供的權杖有效,OAuth 2.0 認證就有效。 使用 OAuth 2.0 認證類型時,請執行下列動作:

  • 根據資料來源類型正確設定 OAuth 2.0 權杖物件。
  • 在承載中傳送 OAuth 2.0 權杖,如 OAuth 2.0 認證範例所示。
  • 如果您使用 擴充 功能資料來源,請勿設定 useCallerAADIdentitytrue

權限

  • 使用內部部署閘道時,使用者必須具有閘道管理員許可權。
  • 使用雲端資料來源時,使用者必須是資料來源擁有者。 使用 資料集 - 接管 API 來轉移指定資料集或編頁報表的擁有權 - 接管 API ,以透過指定的編頁報表傳輸資料來源的擁有權。
  • 此 API 呼叫可由服務主體設定檔呼叫。 如需詳細資訊,請參閱:Power BI Embedded中的服務主體設定檔

必要範圍

Dataset.ReadWrite.All

限制

  • 設定 OAuth 認證時,重新整理權杖不會併入,因為它是在 Power BI 服務 中透過 UI 設定認證時。 因此,認證只能用於一小時。
  • 不支援虛擬網路 (VNet) 閘道。
  • SAS 權杖認證僅支援 AzureBlobStorage 和 AzureDataLakeStorage。

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

URI 參數

名稱 位於 必要 類型 Description
datasourceId
path True

string

uuid

資料來源識別碼

gatewayId
path True

string

uuid

閘道識別碼。 使用閘道叢集時,閘道識別碼是指叢集中第一個) 閘道的主要 (。 在這種情況下,閘道識別碼類似于閘道叢集識別碼。

要求本文

名稱 必要 類型 Description
credentialDetails True

CredentialDetails

認證詳細資料

回應

名稱 類型 Description
200 OK

確定

範例

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

定義

名稱 Description
CredentialDetails

認證詳細資料

credentialType

資料來源認證的類型

encryptedConnection

是否要加密資料源連接。 如果您選取加密,且 Power BI 無法建立與資料來源的加密連線,API 呼叫將會失敗。

encryptionAlgorithm

加密演算法。 針對雲端資料來源,指定 None 。 針對內部部署資料來源,指定 RSA-OAEP 並使用閘道公開金鑰來加密認證。

privacyLevel

隱私權等級,這在結合多個來源的資料時相關。

UpdateDatasourceRequest

閘道要求的更新資料來源

CredentialDetails

認證詳細資料

名稱 類型 Description
credentialType

credentialType

認證類型

credentials

string

相依于 'credentialType' 值的認證。 如需詳細資訊,請參閱 更新資料來源 範例。

encryptedConnection

encryptedConnection

是否要加密資料源連接。 如果您選取加密,且 Power BI 無法建立與資料來源的加密連線,API 呼叫將會失敗。

encryptionAlgorithm

encryptionAlgorithm

加密演算法。 針對雲端資料來源,指定 None 。 針對內部部署資料來源,指定 RSA-OAEP 並使用閘道公開金鑰來加密認證。

privacyLevel

privacyLevel

隱私權等級,這在結合多個來源的資料時相關。

useCallerAADIdentity

boolean

API 呼叫者) 的 Azure AD 身分識別 (OAuth 2.0 認證 (必須是資料來源擁有者,) 將用來設定 (擁有者 OAuth 存取權杖) 的資料來源認證。 一般而言,您可以使用這個旗標或 useEndUserOAuth2Credentials

useEndUserOAuth2Credentials

boolean

在 DirectQuery 模式中連接到資料來源時,是否使用使用者 Azure AD 身分識別 (OAuth 2.0 認證) 。 與支援 單一登入的資料來源搭配使用, (SSO) 。 一般而言,您可以使用這個旗標或 useCallerAADIdentity

credentialType

資料來源認證的類型

名稱 類型 Description
Anonymous

string

Basic

string

Key

string

OAuth2

string

SAS

string

Windows

string

encryptedConnection

是否要加密資料源連接。 如果您選取加密,且 Power BI 無法建立與資料來源的加密連線,API 呼叫將會失敗。

名稱 類型 Description
Encrypted

string

NotEncrypted

string

encryptionAlgorithm

加密演算法。 針對雲端資料來源,指定 None 。 針對內部部署資料來源,指定 RSA-OAEP 並使用閘道公開金鑰來加密認證。

名稱 類型 Description
None

string

RSA-OAEP

string

privacyLevel

隱私權等級,這在結合多個來源的資料時相關。

名稱 類型 Description
None

string

Organizational

string

Private

string

Public

string

UpdateDatasourceRequest

閘道要求的更新資料來源

名稱 類型 Description
credentialDetails

CredentialDetails

認證詳細資料