Gateways - Update Datasource

Atualizações 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.

Observação

Ao alterar de logon único para outros tipos de credencial, como Basic ou OAuth2, defina o parâmetro useEndUserOAuth2Credentialsfalse como conforme 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 useCallerAADIdentitytruecomo .

Permissões

Escopo necessário

Dataset.ReadWrite.All

Limitações

  • Ao definir as credenciais do OAuth, um token de atualização não é incorporado como é ao definir credenciais por meio da interface do usuário em serviço do Power BI. Portanto, as credenciais só podem ser usadas por uma hora.
  • Não há suporte para gateways de VNet (rede virtual).
  • 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 de gateway.

Corpo da solicitação

Nome Obrigatório Tipo Description
credentialDetails True

CredentialDetails

Os detalhes da credencial

Respostas

Nome Tipo Description
200 OK

OK

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

Sample Request

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

Sample Response

Basic credentials example

Sample Request

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

Sample Response

Key credentials example

Sample Request

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

Sample Response

OAuth 2.0 credentials example

Sample Request

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

Sample Response

On-premise encrypted credentials example

Sample Request

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

Sample Response

SAS Token credentials example

Sample Request

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

Sample Response

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 a 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 Atualizar exemplos 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 de Azure AD (credenciais do OAuth 2.0) do chamador de 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 do proprietário). Normalmente, você usaria esse sinalizador ou useEndUserOAuth2Credentials.

useEndUserOAuth2Credentials

boolean

Se a identidade de Azure AD do usuário final (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

Nome Tipo Description
Anonymous

string

Basic

string

Key

string

OAuth2

string

SAS

string

Windows

string

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.

Nome Tipo Description
Encrypted

string

NotEncrypted

string

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.

Nome Tipo Description
None

string

RSA-OAEP

string

privacyLevel

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

Nome Tipo Description
None

string

Organizational

string

Private

string

Public

string

UpdateDatasourceRequest

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

Nome Tipo Description
credentialDetails

CredentialDetails

Os detalhes da credencial