Partilhar via


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

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 useCallerAADIdentity como true.

Permissions

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
datasourceId
path True

string (uuid)

A ID da fonte de dados

gatewayId
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

CredentialDetails

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
CredentialDetails

Os detalhes da credencial

credentialType

O tipo de credencial da 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 None. Para uma fonte de dados local, especifique RSA-OAEP e use a chave pública do gateway para criptografar as credenciais.

privacyLevel

O nível de privacidade, que é relevante ao combinar dados de várias fontes.

UpdateDatasourceRequest

Uma fonte de dados de atualização para solicitação de gateway

CredentialDetails

Os detalhes da credencial

Nome Tipo Description
credentialType

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

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

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.

privacyLevel

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.

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 useCallerAADIdentity.

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

CredentialDetails

Os detalhes da credencial