Os Dashboards de AI/BI do Databricks são frequentemente usados para impulsionar a analítica interna: relatórios de ventas para equipes de go-to-market, dashboards operacionais para gerentes da cadeia de suprimentos, KPIs semanais para revisões da liderança. Mas em muitas organizações, a analítica mais valiosa é aquela que precisa ser compartilhada com clientes, fornecedores ou parceiros. Esses são os entendimentos que moldam o valor do produto, fortalecem relacionamentos e diferenciam sua plataforma.
Com o Embedding para Usuários Externos, você pode pegar um dashboard que já existe no Databricks e colocá-lo diretamente em um aplicativo voltado para clientes ou parceiros. A experiência é totalmente interativa e em tempo real. Os usuários não precisam de uma account do Databricks. E como o Databricks cobra com base na compute, e não por usuário ou por sessão, você pode escala sua analítica para milhares de visualizadores sem incorrer em taxas imprevisíveis.
Este guia explica como a incorporação externa funciona e como configurá-la com segurança, incluindo autenticação, permissões, filtragem em nível de linha e visibilidade de auditoria.

Existem duas maneiras de incorporar os Dashboards de Databricks AI/BI.
Se os seus espectadores são internos à sua organização e já fazem login usando seu provedor de identidade, basta abrir o dashboard, selecionar Compartilhar, escolher Código de incorporação, e colar o iframe resultante em uma ferramenta como o Confluence ou o Salesforce. Quando os usuários abrem o dashboard incorporado, eles fazem login usando as credenciais do Databricks e o Unity Catalog aplica os controles de acesso. Isso é ideal para equipes, departamentos e unidades de negócios dentro da sua empresa. Chamamos isso de incorporação básica de dashboard. Para saber mais, assista a este vídeo.
No entanto, esse método não funciona se seu público for externo e não tiver Databricks accounts. Nesse caso, você usará a Incorporação para Usuários Externos, que se autentica por meio de um Service Principal em vez de usuários individuais. Isso permite que alguém de fora do seu provedor de identidade interaja com um dashboard usando seguros, de curta duração e com escopo definido tokens emitidos pela sua aplicação.
O resultado é uma experiência incorporada perfeita para visualizadores externos, com o painel de AI/BI apresentado como uma extensão natural da interface do seu aplicativo.
De modo geral, seu aplicativo se autentica no Databricks em nome de cada visualizador externo. O aplicativo solicita um token com escopo definido que identifica o visualizador e, opcionalmente, inclui um valor de filtro para controlar os dados que eles têm permissão para ver. O Databricks executa o dashboard usando as permissões do Service Principal e retorna apenas os dados permitidos para aquele visualizador. A atividade do usuário é rastreada e auditável.
Essa estrutura permite que você ofereça experiências de dados personalizadas de maneira segura e governada, sem exigir o provisionamento de novas identidades humanas.
No Databricks, acesse Configurações do Workspace → Segurança → Acesso Externo e adicione o URL da aplicação onde seu dashboard aparecerá à lista de Domínios Aprovados. Para desenvolvimento, você deve adicionar https://localhost ou considerar permitir todos os domínios se estiver usando um workspace de desenvolvimento.
Crie o Dashboard de AI/BI como faria normalmente. Ao publicar, escolha publicar sem credenciais incorporadas. Isso garante que o dashboard sempre seja de execução usando o Service Principal, o que lhe dá controle total sobre os dados que ele pode query.
Navegue até Configurações → Identidade e Acesso → Service Principals e crie um novo Service Principal que represente seu aplicativo externo. Gere um segredo OAuth e armazene-o com segurança. Este Service Principal é a identidade que o Databricks usará ao executar queries do dashboard.
Conceda ao Service Principal permissões SELECT+ em quaisquer tabelas ou views subjacentes referenciadas pelo dashboard.
Abra o dashboard, selecione Compartilhar e conceda ao Service Principal acesso de Pode execução. O Service Principal agora pode executar o dashboard no lugar de um usuário humano.
Neste ponto, você precisará ter sua própria aplicação para prosseguir. Sinta-se à vontade para acompanhar usando nossa aplicação de exemplo aqui.
Sua aplicação precisará gerar um token OAuth para cada visualizador que acessar seu painel. Em nossa aplicação de exemplo, o código é mais ou menos assim:
Para adicionar observabilidade e, opcionalmente, personalizar os dados, solicite um tokens com escopo que inclua um identificador de visualizador e um valor de filtro opcional:
external_viewer_id identifica exclusivamente cada visualizador externo e aparece automaticamente nos Databricks audit logs, oferecendo visibilidade total de quem visualizou o quê.external_value, se especificado, pode ser referenciado no SQL do seu painel pela variável global __aibi_external_value para aplicar a segurança em nível de linha dinamicamente. Ele só será exibido no seu histórico de query e no seu tokens.Por exemplo:
Isso permite que seu aplicativo exiba os dados de cada cliente, eliminando a necessidade de dashboards ou datasets duplicados. Esses valores são assinados com segurança via OAuth e não podem ser alterados pelos usuários do aplicativo.
Incorpore o dashboard com segurança em sua aplicação usando o cliente Databricks:
Seus clientes e parceiros agora podem view painéis de AI/BI interativos e em tempo real sem a necessidade de fazer login no Databricks.
O Databricks não cobra por usuário nem por sessão do visualizador. Você paga apenas pela SQL compute que alimenta as query do painel, assim como faria para analítica interna. Isso o torna ideal para analítica voltadas para o cliente, nas quais o número de usuários pode ser grande ou imprevisível.
Para experimentar a incorporação de Dashboards de AI/BI em suas próprias aplicações, confira nossa aplicação de exemplo aqui e também consulte a documentação da Databricks.
Com apenas algumas linhas de código, você pode estender as percepções geradas pelo Databricks diretamente para seus produtos e experiências do cliente — de forma segura, em escala e com o mesmo modelo unificado de compute e governança que executa todo o resto.
(This blog post has been translated using AI-powered tools) Original Post
Produto
June 11, 2024/11 min de leitura