Gateways - Create Datasource
在指定的內部部署閘道上建立新的數據源。
內部部署數據源認證必須加密。
encryptedConnection 參數必須設定為 Encrypted,而且應該使用閘道公鑰加密認證。
如需使用此 API 的範例,請參閱 建立閘道 DataSource PowerShell 腳本,此腳本會使用下列附注中所述的 PowerShell 腳本來加密認證。
備註
若要加密認證,請參閱 以程式設計方式設定Power BI的認證,並檢閱 EncryptCredentials .NET Core、Java、Python 和 PowerShell 範例。
權限
僅支持內部部署閘道,且用戶必須具有閘道管理員許可權
必要範圍
Dataset.ReadWrite.All
局限性
- 不支援虛擬網路 (VNet) 和雲端閘道。
- 不支援 OAuth2 作為認證類型。
POST https://api.powerbi.com/v1.0/myorg/gateways/{gatewayId}/datasources
URI 參數
| 名稱 | 位於 | 必要 | 類型 | Description |
|---|---|---|---|---|
|
gateway
|
path | True |
string (uuid) |
閘道識別碼。 使用閘道叢集時,閘道標識碼是指叢集中的主要 (第一個) 網關。 在這種情況下,閘道標識碼類似於閘道叢集標識碼。 |
要求本文
| 名稱 | 必要 | 類型 | Description |
|---|---|---|---|
| connectionDetails | True |
string |
線上詳細數據 |
| credentialDetails | True |
認證詳細數據 |
|
| dataSourceName | True |
string |
數據源名稱 |
| dataSourceType | True |
string |
數據源類型 |
回應
| 名稱 | 類型 | Description |
|---|---|---|
| 201 Created |
已建立 |
範例
| 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 |
|---|---|
|
Credential |
認證詳細數據 |
|
credential |
數據源類型 認證 |
|
encrypted |
是否要加密數據源連線。 如果您選取加密,且 Power BI 無法建立與數據源的加密連線,API 呼叫將會失敗。 |
|
encryption |
加密演算法。 針對雲端資料來源,指定 |
|
Gateway |
Power BI 閘道數據源 |
|
Gateway |
數據源認證詳細數據 |
|
privacy |
結合多個來源的數據時,隱私權等級是相關的。 |
|
Publish |
將數據源發佈至閘道要求 |
CredentialDetails
認證詳細數據
| 名稱 | 類型 | Description |
|---|---|---|
| credentialType |
認證類型 |
|
| credentials |
string |
相依於 'credentialType' 值的認證。 如需詳細資訊,請參閱 更新數據源 範例。 |
| encryptedConnection |
是否要加密數據源連線。 如果您選取加密,且 Power BI 無法建立與數據源的加密連線,API 呼叫將會失敗。 |
|
| encryptionAlgorithm |
加密演算法。 針對雲端資料來源,指定 |
|
| privacyLevel |
結合多個來源的數據時,隱私權等級是相關的。 |
|
| useCallerAADIdentity |
boolean |
API 呼叫端的 Azure AD 身分識別(OAuth 2.0 認證)是否將用來設定數據源認證(擁有者 OAuth 存取令牌)。 一般而言,您會使用此旗標或 |
| useEndUserOAuth2Credentials |
boolean |
在 DirectQuery 模式中連接到數據源時,是否使用使用者 Azure AD 身分識別 (OAuth 2.0 認證)。 與支援 單一登錄 (SSO)的數據源搭配使用。 一般而言,您會使用此旗標或 |
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 |
需要更新之數據源的連接詳細數據。 當數據集有多個數據源時,連線詳細數據是必要的。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||
| credentialType |
數據源類型 認證 |
||||||||||||||||||||||||||||||||||||||||||||||||||||
| datasourceName |
string |
數據源的名稱 |
|||||||||||||||||||||||||||||||||||||||||||||||||||
| datasourceType |
string |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||
| 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 |
認證詳細數據 |
|
| dataSourceName |
string |
數據源名稱 |
| dataSourceType |
string |
數據源類型 |