共用方式為


Gateways - Create Datasource

在指定的內部部署閘道上建立新的數據源。


內部部署數據源認證必須加密。 encryptedConnection 參數必須設定為 Encrypted,而且應該使用閘道公鑰加密認證。

如需使用此 API 的範例,請參閱 建立閘道 DataSource PowerShell 腳本,此腳本會使用下列附注中所述的 PowerShell 腳本來加密認證。

備註

若要加密認證,請參閱 以程式設計方式設定Power BI的認證,並檢閱 EncryptCredentials .NET CoreJavaPythonPowerShell 範例。

權限

僅支持內部部署閘道,且用戶必須具有閘道管理員許可權

必要範圍

Dataset.ReadWrite.All

局限性

  • 不支援虛擬網路 (VNet) 和雲端閘道。
  • 不支援 OAuth2 作為認證類型。

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

URI 參數

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

string (uuid)

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

要求本文

名稱 必要 類型 Description
connectionDetails True

string

線上詳細數據

credentialDetails True

CredentialDetails

認證詳細數據

dataSourceName True

string

數據源名稱

dataSourceType True

string

數據源類型

回應

名稱 類型 Description
201 Created

GatewayDatasource

已建立

範例

Azure Analysis Services example
SQL example

Azure Analysis Services example

範例要求

POST https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources
{
  "dataSourceType": "AnalysisServices",
  "connectionDetails": "{\"server\":\"MyServer\",\"database\":\"MyDatabase\"}",
  "datasourceName": "Sample Datasource",
  "credentialDetails": {
    "credentialType": "Windows",
    "credentials": "AB....EF==",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "RSA-OAEP",
    "privacyLevel": "None"
  }
}

範例回覆

SQL example

範例要求

POST https://api.powerbi.com/v1.0/myorg/gateways/1f69e798-5852-4fdd-ab01-33bb14b6e934/datasources
{
  "dataSourceType": "SQL",
  "connectionDetails": "{\"server\":\"MyServer\",\"database\":\"MyDatabase\"}",
  "datasourceName": "Sample Datasource",
  "credentialDetails": {
    "credentialType": "Windows",
    "credentials": "AB....EF==",
    "encryptedConnection": "Encrypted",
    "encryptionAlgorithm": "RSA-OAEP",
    "privacyLevel": "None"
  }
}

範例回覆

定義

名稱 Description
CredentialDetails

認證詳細數據

credentialType

數據源類型 認證

encryptedConnection

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

encryptionAlgorithm

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

GatewayDatasource

Power BI 閘道數據源

GatewayDatasourceCredentialDetails

數據源認證詳細數據

privacyLevel

結合多個來源的數據時,隱私權等級是相關的。

PublishDatasourceToGatewayRequest

將數據源發佈至閘道要求

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
Basic
Windows
Anonymous
OAuth2
Key
SAS

encryptedConnection

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

Description
Encrypted
NotEncrypted

encryptionAlgorithm

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

Description
None
RSA-OAEP

GatewayDatasource

Power BI 閘道數據源

名稱 類型 Description
connectionDetails

string

JSON 格式的連線詳細數據

credentialDetails

GatewayDatasourceCredentialDetails

需要更新之數據源的連接詳細數據。 當數據集有多個數據源時,連線詳細數據是必要的。

credentialType

credentialType

數據源類型 認證

datasourceName

string

數據源的名稱

datasourceType

string

資料來源的類型

數據源的 API 名稱
ActiveDirectory AdobeAnalytics AdoDotNet
AnalysisServices AzureBlobs AzureDataLakeStorage
AzureMarketplace AzureTables BizTalk
CDPA CustomConnector CustomHttpApi
DB2 Essbase EventHub
Excel 交換 擴充套件
Facebook 檔案 資料夾
GoogleAnalytics Hdfs HDInsight
Informix MQ MySql
OData ODBC OleDb
Oracle公司 PostgreSql PowerQueryMashup
PubNub Salesforce SAPBW
SAPBWMessageServer SapErp SAPHana
SharePoint SharePointDocLib SharePointList
SQL Sybase Teradata
UIFlow 網路
gatewayId

string (uuid)

相關聯的閘道標識碼。 使用閘道叢集時,閘道標識碼是指叢集中的主要(第一個)網關,類似於閘道叢集標識碼。

id

string (uuid)

數據源的唯一標識碼

GatewayDatasourceCredentialDetails

數據源認證詳細數據

名稱 類型 Description
useEndUserOAuth2Credentials

boolean

在 DirectQuery 模式中連接到數據源時,是否使用使用者 Azure AD 身分識別 (OAuth 2.0 認證)。 與支援 單一登錄 (SSO)的數據源搭配使用。

privacyLevel

結合多個來源的數據時,隱私權等級是相關的。

Description
None
Public
Organizational
Private

PublishDatasourceToGatewayRequest

將數據源發佈至閘道要求

名稱 類型 Description
connectionDetails

string

線上詳細數據

credentialDetails

CredentialDetails

認證詳細數據

dataSourceName

string

數據源名稱

dataSourceType

string

數據源類型