Conectar e autenticar com fontes de dados
Muitos dos aplicativos e das soluções que você criar no Power Platform exigirão dados de outras fontes de dados. Por exemplo, um aplicativo de tela pode precisar incluir dados do Microsoft Dataverse e de outra fonte, como um banco de dados SQL ou outra fonte.
A conexão e a autenticação de uma fonte de dados são feitas separadamente da autenticação de um serviço do Power Platform. Ao considerar como as conexões são autenticadas, primeiro você precisa entender como os serviços do Power Platform se conectam com diferentes fontes de dados. Os serviços do Power Platform se conectam de várias maneiras, dependendo da fonte de dados. Com base no aplicativo e na fonte de dados usada, as credenciais de autenticação para a fonte de dados podem ser iguais às do serviço do Power Platform ou podem ser diferentes.
Conectando ao Microsoft Dataverse
Os aplicativos de tela e baseados em modelo do Power Apps se conectam diretamente ao Dataverse sem precisar de um conector separado. Os aplicativos de tela armazenam a permissão para trabalhar com outros ambientes do Dataverse no RP (Provedor de Recursos) do Power Apps. O Power Automate realiza a autenticação usando um Hub de API, mas todas as interações de dados após a autenticação são diretas para o Dataverse. Tanto o Power Apps quanto o Power Automate dão suporte a conectores herdados para acessar o Dataverse, inclusive o Dynamics 365 Connector preterido e o conector do Microsoft Dataverse (herdado).
O diagrama abaixo ilustra como os aplicativos de tela funcionam com o Dataverse.
Os serviços de back-end do Power Apps solicitam dados diretamente do Dataverse.
O Dataverse retorna os resultados da consulta para os serviços de back-end do Power Apps.
Conectar-se a fontes de dados que não são do Dataverse
Em geral, os serviços do Power Platform usarão conectores para trabalhar com fontes de dados externas que não são do Dataverse. Esses conectores atuam como wrappers de API para ajudar a fornecer acesso aos dados e comandos disponíveis por meio do conector.
O diagrama a seguir ilustra um caminho típico usando um conector de APIM (Gerenciamento de API do Azure).
O serviço do Power Platform envia uma solicitação de conexão ao RP (Provedor de Recursos) do Power Apps.
O RP do Power Apps solicita que o Hub de API crie uma conexão e armazene as credenciais de autenticação.
O serviço do Power Platform envia uma solicitação de consulta de dados ao conector de Gerenciamento de API.
O conector de Gerenciamento de API envia uma solicitação ao serviço de consentimento a fim de obter permissão para acessar a fonte de dados.
O serviço de consentimento retorna credenciais para o conector de Gerenciamento de API.
O conector de Gerenciamento de API envia as credenciais de consentimento ao RP do Power Apps. As credenciais são armazenadas no RP para que o Power Apps não solicite o consentimento novamente na próxima vez que os dados forem solicitados.
O conector de Gerenciamento da API passa a consulta de dados para o conector externo.
O conector envia a consulta para a fonte de dados.
A fonte de dados retorna ao conector os dados solicitados.
O conector passa os dados de volta ao cluster de back-end do Power Platform.
Realizar a autenticação com fontes de dados
Os usuários se autenticam primeiro no serviço do Power Platform. Em seguida, separadamente, os usuários se autenticam em uma fonte de dados usando as credenciais necessárias do conector. O serviço de credenciais do Hub de API sempre armazena e gerencia credenciais.
Alguns conectores dão suporte a mais de um método de autenticação. A autenticação para uma fonte de dados é específica a essa instância da fonte de dados. Baseia-se no método de autenticação que o criador escolheu ao criar a conexão.
Há dois tipos de métodos de autenticação de fonte de dados no Power Apps:
Autenticação explícita significa que as credenciais do usuário do aplicativo são usadas para acessar a fonte de dados.
Autenticação implícita significa que são usadas as credenciais fornecidas pelo criador do aplicativo ao criar a conexão.
Recomendamos usar autenticação explícita sempre que possível. Ela é mais segura.
Você pode saber mais sobre a diferença entre conexões explícitas e implícitas aqui: Conexões explícitas versus implícitas.. Embora o artigo se refira ao SQL Server, ele se aplica a todos os bancos de dados relacionais.