Gateways - Create Datasource

在指定的本地网关上创建新的数据源。


必须加密本地数据源凭据。 参数 encryptedConnection 必须设置为 Encrypted ,并且应使用网关公钥加密凭据。

有关使用此 API 的示例,请参阅 创建网关数据源 PowerShell 脚本,此脚本使用以下说明中提到的 PowerShell 脚本来加密凭据。

注意

若要加密凭据,请参阅以编程方式为 Power BI 配置凭据 ,并查看 EncryptCredentials .NET CoreJavaPythonPowerShell 示例。

权限

仅支持本地网关,用户必须具有网关管理员权限

必需范围

Dataset.ReadWrite.All

限制

  • 不支持虚拟网络 (VNet) 和云网关。
  • 不支持 OAuth2 作为凭据类型。

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

URI 参数

名称 必需 类型 说明
gatewayId
path True

string

uuid

网关 ID。 使用网关群集时,网关 ID 是指群集中第一个) 网关的主 (。 在这种情况下,网关 ID 类似于网关群集 ID。

请求正文

名称 必需 类型 说明
connectionDetails True

string

连接详细信息

credentialDetails True

CredentialDetails

凭据详细信息

dataSourceName True

string

数据源名称

dataSourceType True

string

数据源类型

响应

名称 类型 说明
201 Created

GatewayDatasource

创建

示例

Azure Analysis Services example
SQL example

Azure Analysis Services example

Sample Request

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

Sample Response

SQL example

Sample Request

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

Sample Response

定义

名称 说明
CredentialDetails

凭据详细信息

credentialType

数据源凭据的类型

encryptedConnection

是否加密数据源连接。 如果选择加密,并且 Power BI 无法与数据源建立加密连接,API 调用将失败。

encryptionAlgorithm

加密算法。 对于云数据源,请指定 None。 对于本地数据源,请指定 RSA-OAEP 并使用网关公钥来加密凭据。

GatewayDatasource

Power BI 网关数据源

GatewayDatasourceCredentialDetails

数据源凭据详细信息

privacyLevel

隐私级别,在合并来自多个源的数据时是相关的。

PublishDatasourceToGatewayRequest

将数据源发布到网关请求

CredentialDetails

凭据详细信息

名称 类型 说明
credentialType

credentialType

凭据类型

credentials

string

凭据,取决于“credentialType”值。 有关详细信息,请参阅 更新数据源 示例。

encryptedConnection

encryptedConnection

是否加密数据源连接。 如果选择加密,并且 Power BI 无法与数据源建立加密连接,API 调用将失败。

encryptionAlgorithm

encryptionAlgorithm

加密算法。 对于云数据源,请指定 None。 对于本地数据源,请指定 RSA-OAEP 并使用网关公钥来加密凭据。

privacyLevel

privacyLevel

隐私级别,在合并来自多个源的数据时是相关的。

useCallerAADIdentity

boolean

Azure AD 标识是否 (OAuth 2.0 凭据) API 调用方 (必须是数据源所有者) 将用于配置数据源凭据 (所有者 OAuth 访问令牌) 。 通常,你将使用此标志或 useEndUserOAuth2Credentials

useEndUserOAuth2Credentials

boolean

在 DirectQuery 模式下连接到数据源时,是否使用最终用户 Azure AD 标识 (OAuth 2.0 凭据) 。 与支持 单一登录 (SSO) 的数据源一起使用。 通常,你将使用此标志或 useCallerAADIdentity

credentialType

数据源凭据的类型

名称 类型 说明
Anonymous

string

Basic

string

Key

string

OAuth2

string

SAS

string

Windows

string

encryptedConnection

是否加密数据源连接。 如果选择加密,并且 Power BI 无法与数据源建立加密连接,API 调用将失败。

名称 类型 说明
Encrypted

string

NotEncrypted

string

encryptionAlgorithm

加密算法。 对于云数据源,请指定 None。 对于本地数据源,请指定 RSA-OAEP 并使用网关公钥来加密凭据。

名称 类型 说明
None

string

RSA-OAEP

string

GatewayDatasource

Power BI 网关数据源

名称 类型 说明
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 Exchange 分机
Facebook 文件 Folder
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 Web
gatewayId

string

关联的网关 ID。 使用网关群集时,网关 ID 是指群集中第一个) 网关的主 (,类似于网关群集 ID。

id

string

数据源的唯一 ID

GatewayDatasourceCredentialDetails

数据源凭据详细信息

名称 类型 说明
useEndUserOAuth2Credentials

boolean

在 DirectQuery 模式下连接到数据源时,是否使用最终用户 Azure AD 标识 (OAuth 2.0 凭据) 。 与支持 单一登录 (SSO) 的数据源一起使用。

privacyLevel

隐私级别,在合并来自多个源的数据时是相关的。

名称 类型 说明
None

string

Organizational

string

Private

string

Public

string

PublishDatasourceToGatewayRequest

将数据源发布到网关请求

名称 类型 说明
connectionDetails

string

连接详细信息

credentialDetails

CredentialDetails

凭据详细信息

dataSourceName

string

数据源名称

dataSourceType

string

数据源类型