Gateways - Create Datasource
Создает новый источник данных в указанном локальном шлюзе.
Учетные данные локального источника данных должны быть зашифрованы. Параметру encryptedConnection
необходимо задать значение Encrypted
, а учетные данные должны быть зашифрованы с помощью открытого ключа шлюза.
Пример использования этого API см. в статье Создание скрипта PowerShell dataSource шлюза . Этот скрипт использует сценарий PowerShell, упомянутый в примечании ниже, для шифрования учетных данных.
Примечание
Сведения о шифровании учетных данных см. в статье Настройка учетных данных программным способом для Power BI и примеры EncryptCredentials .NET Core, Java, Python и PowerShell .
Разрешения
Поддерживает только локальные шлюзы, и пользователь должен иметь разрешения администратора шлюза.
Требуемая область
Dataset.ReadWrite.All
Ограничения
- Шлюзы виртуальной сети и облачные шлюзы не поддерживаются.
- OAuth2 в качестве типа учетных данных не поддерживается.
POST https://api.powerbi.com/v1.0/myorg/gateways/{gatewayId}/datasources
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
gateway
|
path | True |
string uuid |
Идентификатор шлюза. При использовании кластера шлюза идентификатор шлюза относится к основному (первому) шлюзу в кластере. В таких случаях идентификатор шлюза аналогичен идентификатору кластера шлюза. |
Текст запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
connectionDetails | True |
string |
Сведения о подключении |
credentialDetails | True |
Сведения об учетных данных |
|
dataSourceName | True |
string |
Имя источника данных |
dataSourceType | True |
string |
Тип источника данных |
Ответы
Имя | Тип | Описание |
---|---|---|
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"
}
}
Пример ответа
Определения
Имя | Описание |
---|---|
Credential |
Сведения об учетных данных |
credential |
Тип учетных данных источника данных |
encrypted |
Следует ли шифровать подключение к источнику данных. Вызов API завершится ошибкой, если выбрано шифрование и Power BI не сможет установить зашифрованное подключение к источнику данных. |
encryption |
Алгоритм шифрования. Для облачного источника данных укажите |
Gateway |
Источник данных шлюза Power BI |
Gateway |
Сведения об учетных данных источника данных |
privacy |
Уровень конфиденциальности, который имеет значение при объединении данных из нескольких источников. |
Publish |
Запрос на публикацию источника данных в шлюз |
CredentialDetails
Сведения об учетных данных
Имя | Тип | Описание |
---|---|---|
credentialType |
Тип учетных данных |
|
credentials |
string |
Учетные данные, которые зависят от значения credentialType. Дополнительные сведения см. в разделе Обновление примеров источников данных . |
encryptedConnection |
Следует ли шифровать подключение к источнику данных. Вызов API завершится ошибкой, если выбрано шифрование и Power BI не сможет установить зашифрованное подключение к источнику данных. |
|
encryptionAlgorithm |
Алгоритм шифрования. Для облачного источника данных укажите |
|
privacyLevel |
Уровень конфиденциальности, который имеет значение при объединении данных из нескольких источников. |
|
useCallerAADIdentity |
boolean |
Указывает, будет ли использоваться удостоверение Azure AD (учетные данные OAuth 2.0) вызывающей стороны API (который должен быть владельцем источника данных) для настройки учетных данных источника данных (маркера доступа OAuth владельца). Как правило, вы используете этот флаг или |
useEndUserOAuth2Credentials |
boolean |
Указывает, используется ли удостоверение конечного пользователя Azure AD (учетные данные OAuth 2.0) при подключении к источнику данных в режиме DirectQuery. Используйте с источниками данных, поддерживающими единый вход. Как правило, вы используете этот флаг или |
credentialType
Тип учетных данных источника данных
Имя | Тип | Описание |
---|---|---|
Anonymous |
string |
|
Basic |
string |
|
Key |
string |
|
OAuth2 |
string |
|
SAS |
string |
|
Windows |
string |
encryptedConnection
Следует ли шифровать подключение к источнику данных. Вызов API завершится ошибкой, если выбрано шифрование и Power BI не сможет установить зашифрованное подключение к источнику данных.
Имя | Тип | Описание |
---|---|---|
Encrypted |
string |
|
NotEncrypted |
string |
encryptionAlgorithm
Алгоритм шифрования. Для облачного источника данных укажите None
. Для локального источника данных укажите RSA-OAEP
и используйте открытый ключ шлюза для шифрования учетных данных.
Имя | Тип | Описание |
---|---|---|
None |
string |
|
RSA-OAEP |
string |
GatewayDatasource
Источник данных шлюза Power BI
Имя | Тип | Описание | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
connectionDetails |
string |
Сведения о подключении в формате JSON |
|||||||||||||||||||||||||||||||||||||||||||||||||||
credentialDetails |
Сведения о подключении для источника данных, который требуется обновить. Сведения о подключении являются обязательными, если набор данных содержит несколько источников данных. |
||||||||||||||||||||||||||||||||||||||||||||||||||||
credentialType |
Тип учетных данных источника данных |
||||||||||||||||||||||||||||||||||||||||||||||||||||
datasourceName |
string |
Имя источника данных. |
|||||||||||||||||||||||||||||||||||||||||||||||||||
datasourceType |
string |
Тип источника данных.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||
gatewayId |
string |
Идентификатор связанного шлюза. При использовании кластера шлюза идентификатор шлюза относится к основному (первому) шлюзу в кластере и аналогичен идентификатору кластера шлюза. |
|||||||||||||||||||||||||||||||||||||||||||||||||||
id |
string |
Уникальный идентификатор источника данных. |
GatewayDatasourceCredentialDetails
Сведения об учетных данных источника данных
Имя | Тип | Описание |
---|---|---|
useEndUserOAuth2Credentials |
boolean |
Указывает, используется ли удостоверение конечного пользователя Azure AD (учетные данные OAuth 2.0) при подключении к источнику данных в режиме DirectQuery. Используйте с источниками данных, поддерживающими единый вход. |
privacyLevel
Уровень конфиденциальности, который имеет значение при объединении данных из нескольких источников.
Имя | Тип | Описание |
---|---|---|
None |
string |
|
Organizational |
string |
|
Private |
string |
|
Public |
string |
PublishDatasourceToGatewayRequest
Запрос на публикацию источника данных в шлюз
Имя | Тип | Описание |
---|---|---|
connectionDetails |
string |
Сведения о подключении |
credentialDetails |
Сведения об учетных данных |
|
dataSourceName |
string |
Имя источника данных |
dataSourceType |
string |
Тип источника данных |