Gateways - Update Datasource
Atualiza as credenciais da fonte de dados especificada do gateway especificado.
As credenciais da fonte de dados local devem ser criptografadas, conforme descrito no exemplo de credenciais criptografadas locais.
Consulte o script powershell de credenciais do Patch Datasource para obter um exemplo de como usar essa API, esse script usa o script do PowerShell mencionado na observação abaixo para criptografar as credenciais.
Observação
- Para criptografar credenciais, consulte Configurar credenciais programaticamente para o Power BI e examine os exemplos de .NET Core, Java, Python e PowerShell do EncryptCredentials.
- As credenciais do Windows antes da criptografia se parecem com as credenciais no exemplo de credenciais básicas.
Ao alterar do logon único para outros tipos de credencial, como Basic ou OAuth2, defina o parâmetro useEndUserOAuth2Credentials como false descrito no exemplo de credenciais básicas.
As credenciais do OAuth 2.0 são válidas desde que o token fornecido seja válido. Ao usar o tipo de credencial OAuth 2.0, faça o seguinte:
- Defina o público-alvo do token OAuth 2.0 corretamente, de acordo com o tipo de fonte de dados.
- Envie o token OAuth 2.0 no conteúdo, conforme mostrado no exemplo de credenciais do OAuth 2.0.
- Se você estiver usando fontes de dados de extensão , não defina
useCallerAADIdentitycomotrue.
Permissions
- Com gateways locais, o usuário deve ter permissões de administrador de gateway.
- Com fontes de dados na nuvem, o usuário deve ser o proprietário da fonte de dados. Usar conjuntos de dados – assumir a API para transferir a propriedade sobre o conjunto de dados especificado ou relatórios paginados – assumir a API para transferir a propriedade das fontes de dados pelo relatório paginado especificado.
- Essa chamada à API pode ser chamada por um perfil de entidade de serviço. Para obter mais informações, consulte: Perfis de entidade de serviço no Power BI Embedded.
Escopo necessário
Dataset.ReadWrite.All
Limitações
- Ao definir as credenciais do OAuth, um token de atualização não é incorporado como está ao definir credenciais por meio da interface do usuário no serviço do Power BI. Portanto, as credenciais só podem ser usadas por uma hora.
- Não há suporte para gateways de rede virtual (VNet).
- As credenciais do Token SAS têm suporte apenas com AzureBlobStorage e AzureDataLakeStorage.
PATCH https://api.powerbi.com/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}
Parâmetros de URI
| Nome | Em | Obrigatório | Tipo | Description |
|---|---|---|---|---|
|
datasource
|
path | True |
string (uuid) |
A ID da fonte de dados |
|
gateway
|
path | True |
string (uuid) |
A ID do gateway. Ao usar um cluster de gateway, a ID do gateway refere-se ao gateway primário (primeiro) no cluster. Nesses casos, a ID do gateway é semelhante à ID do cluster do gateway. |
Corpo da solicitação
| Nome | Obrigatório | Tipo | Description |
|---|---|---|---|
| credentialDetails | True |
Os detalhes da credencial |
Respostas
| Nome | Tipo | Description |
|---|---|---|
| 200 OK |
OKEY |
Exemplos
| 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
Solicitação de exemplo
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"
}
}
Resposta de exemplo
Basic credentials example
Solicitação de exemplo
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"
}
}
Resposta de exemplo
Key credentials example
Solicitação de exemplo
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"
}
}
Resposta de exemplo
OAuth 2.0 credentials example
Solicitação de exemplo
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"
}
}
Resposta de exemplo
On-premise encrypted credentials example
Solicitação de exemplo
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"
}
}
Resposta de exemplo
SAS Token credentials example
Solicitação de exemplo
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"
}
}
Resposta de exemplo
Definições
| Nome | Description |
|---|---|
|
Credential |
Os detalhes da credencial |
|
credential |
O tipo de credencial da fonte de dados |
|
encrypted |
Se a conexão da fonte de dados deve ser criptografada. A chamada à API falhará se você selecionar criptografia e o Power BI não conseguir estabelecer uma conexão criptografada com a fonte de dados. |
|
encryption |
O algoritmo de criptografia. Para uma fonte de dados de nuvem, especifique |
|
privacy |
O nível de privacidade, que é relevante ao combinar dados de várias fontes. |
|
Update |
Uma fonte de dados de atualização para solicitação de gateway |
CredentialDetails
Os detalhes da credencial
| Nome | Tipo | Description |
|---|---|---|
| credentialType |
O tipo de credencial |
|
| credentials |
string |
As credenciais, que dependem do valor 'credentialType'. Para obter mais informações, consulte Exemplos de Atualização de Fonte de Dados . |
| encryptedConnection |
Se a conexão da fonte de dados deve ser criptografada. A chamada à API falhará se você selecionar criptografia e o Power BI não conseguir estabelecer uma conexão criptografada com a fonte de dados. |
|
| encryptionAlgorithm |
O algoritmo de criptografia. Para uma fonte de dados de nuvem, especifique |
|
| privacyLevel |
O nível de privacidade, que é relevante ao combinar dados de várias fontes. |
|
| useCallerAADIdentity |
boolean |
Se a identidade do Azure AD (credenciais do OAuth 2.0) do chamador da API (que deve ser o proprietário da fonte de dados) será usada para configurar as credenciais da fonte de dados (o token de acesso OAuth proprietário). Normalmente, você usaria esse sinalizador ou |
| useEndUserOAuth2Credentials |
boolean |
Se a identidade do usuário final do Azure AD (credenciais do OAuth 2.0) é usada ao se conectar à fonte de dados no modo DirectQuery. Use com fontes de dados que dão suporte ao SSO (logon único). Normalmente, você usaria esse sinalizador ou |
credentialType
O tipo de credencial da fonte de dados
| Valor | Description |
|---|---|
| Basic | |
| Windows | |
| Anonymous | |
| OAuth2 | |
| Key | |
| SAS |
encryptedConnection
Se a conexão da fonte de dados deve ser criptografada. A chamada à API falhará se você selecionar criptografia e o Power BI não conseguir estabelecer uma conexão criptografada com a fonte de dados.
| Valor | Description |
|---|---|
| Encrypted | |
| NotEncrypted |
encryptionAlgorithm
O algoritmo de criptografia. Para uma fonte de dados de nuvem, especifique None. Para uma fonte de dados local, especifique RSA-OAEP e use a chave pública do gateway para criptografar as credenciais.
| Valor | Description |
|---|---|
| None | |
| RSA-OAEP |
privacyLevel
O nível de privacidade, que é relevante ao combinar dados de várias fontes.
| Valor | Description |
|---|---|
| None | |
| Public | |
| Organizational | |
| Private |
UpdateDatasourceRequest
Uma fonte de dados de atualização para solicitação de gateway
| Nome | Tipo | Description |
|---|---|---|
| credentialDetails |
Os detalhes da credencial |