O Looker é excelente para tornar os dados acessíveis a todos os seus utilizadores ou clientes. Como gostamos de dizer, o Looker ajuda a "democratizar os dados". Pode permitir que os seus utilizadores vejam os resultados das consultas por conta própria, sem que um analista tenha de criar manualmente um painel de controlo. Com o Looker, os seus utilizadores podem até realizar as suas próprias análises. Uma forma de o fazer é usar a funcionalidade de incorporação assinada do Looker. Esta página aborda dois métodos diferentes para implementar a incorporação assinada: a API Looker e o SDK (Software Development Kit) de incorporação do Looker.
Suponhamos que quer integrar os resultados das consultas na sua própria aplicação ou sistemas internos da empresa e não quer ter de fornecer credenciais do Looker a todos os seus utilizadores. Isto pode ser feito com a funcionalidade de incorporação assinada do Looker. Isto é diferente da referência geral aos fluxos de trabalho de SSO, como LDAP ou SAML, que também podem ser integrados na sua instância do Looker.
O incorporado com sessão iniciada com sessão iniciada significa que, assim que o URL de incorporação é criado e o pedido é enviado a partir do navegador, a sessão do Looker do utilizador é iniciada e o utilizador tem sessão iniciada. Estes URLs são assinados e só podem ser usados uma vez. Estes URLs criam iFrames que permitem aos programadores incorporar conteúdo, como explorações, visuais e painéis de controlo, no Website ou na aplicação da sua empresa. Quando o URL é usado, se o utilizador não tiver uma conta existente, é criada uma para ele com base nos parâmetros transmitidos para o URL.
Os programadores podem tirar partido da API Looker ou dos SDKs da API Looker para criar dinamicamente estes iFrames. Pode aplicar temas e personalizar o conteúdo para se adequar às necessidades da sua empresa ou de um grupo específico de utilizadores. Para ver mais sobre o potencial da incorporação do Looker no seu conteúdo, veja uma demonstração completa com uma explicação de como estes conceitos podem ser aplicados.
Então, como posso começar?
Agora, suponhamos que viu a demonstração e quer explorar a adição destes iFrames à sua aplicação. Por onde deve começar e que método é adequado para o seu exemplo de utilização?
O Looker oferece várias opções principais para gerar este conteúdo, que pode ser colocado na sua aplicação ou Website:
- Exemplos de repositórios do Looker de scripts escritos em várias linguagens de programação (C#, Python, Node.js, Python, Ruby e PHP)
- O ponto final
Create Signed Embed Url
incluído na nossa API REST, que é acessível através de pedidos HTTP ou de um dos nossos SDKs - SDK de incorporação do Looker
Geralmente, recomendamos o SDK incorporado e o ponto final da API REST aos clientes em vez de scripts de exemplo, porque tanto o SDK como a API REST são atualizados frequentemente pelos nossos programadores e, geralmente, criam URLs mais curtos em comparação com os scripts. (Os URLs mais curtos são um pouco mais fáceis de gerir.) Existem também algumas funcionalidades de segurança úteis que o SDK de incorporação e o ponto final da API REST oferecem, que são abordadas mais adiante nesta página.
Suponhamos que queremos que o utilizador da nossa app possa ver um painel de controlo do Looker numa página de dados numa aplicação do cliente. Um fluxo de trabalho de incorporação comum pode ter o seguinte aspeto:
- O utilizador inicia sessão numa aplicação. Podem usar um serviço SAML ou apenas um email e uma palavra-passe para iniciar sessão na app.
- A aplicação confirma que as credenciais estão corretas e o utilizador pode aceder com êxito ao conteúdo.
- Com base na resposta do fluxo de trabalho de início de sessão, as informações do utilizador são transmitidas para uma função que pode usar um dos nossos exemplos de scripts para criar o URL incorporado assinado. Estes scripts requerem as autorizações do utilizador, os IDs dos grupos, o segredo de incorporação, o URL do anfitrião, os atributos do utilizador, como o nome próprio e o apelido, os filtros de acesso, a duração da sessão e o URL ao qual queremos que o utilizador possa aceder. Todas estas informações são enviadas para o Looker, e é criado um URL assinado.
- O utilizador navega para a página de dados na aplicação, onde este URL assinado é colocado num iFrame. Em seguida, o navegador publica um pedido no URL do iFrame. O painel de controlo é propagado com uma experiência personalizada, e o utilizador pode aceder aos dados do Looker na aplicação.
O ponto final Create Signed Embed Url
Através da API REST do Looker ou de um dos SDKs, um programador pode gerar um URL assinado e codificado com base num conjunto de parâmetros. Este é um pedido POST. O servidor de origem do pedido da API tem de conseguir autenticar-se no Looker com autorizações de administrador. Uma das principais vantagens de usar este ponto final é que não é necessário um segredo de incorporação para o usar. O ponto final já está configurado para obter o segredo de incorporação atual. As chamadas para este ponto final também não são contabilizadas para as limitações de taxa da API. Em geral, as credenciais da API são mais fáceis de rodar em comparação com um segredo incorporado. Podem estar ativas várias credenciais da API 3 em simultâneo, mas só é possível usar um segredo de incorporação de cada vez numa instância. Isto facilita a substituição das credenciais sem interrupção do serviço. O ponto final Create Signed Embed Url
também cria um URL mais curto e conciso em comparação com os scripts de exemplo no nosso repositório de exemplos de scripts de URLs incorporados assinados.
Segue-se um exemplo de fluxo de trabalho que usa o ponto final Create Signed Embed Url
:
- O utilizador tenta iniciar sessão na sua aplicação, normalmente com uma combinação de nome de utilizador e palavra-passe ou, possivelmente, através de um fornecedor de identidade (IdP).
- Se o utilizador iniciar sessão com êxito na aplicação, o ponto final
Create Signed Embed Url
é executado. Uma função criada pela sua equipa de desenvolvimento transmite as credenciais específicas desse utilizador para este ponto final, e o Looker devolve um URL assinado ao seu servidor. - O utilizador pode ter a opção de clicar num separador de dados na aplicação. Quando navegam para o separador de dados, esta página pede o URL assinado ao seu servidor e coloca-o no iFrame na página.
- O utilizador vê um painel de controlo do Looker incorporado perfeitamente na sua aplicação com dados em direto.
SDK Embed
O SDK de incorporação do Looker é uma coleção de funções JavaScript incluídas num pacote para facilitar a incorporação de conteúdo do Looker para os programadores. O SDK de incorporação permite-lhe adicionar conteúdo do Looker a uma página na sua aplicação ou no seu Website sem ter de criar elementos HTML específicos. O SDK permite aos programadores criar uma comunicação ponto a ponto segura entre a página HTML e o seu conteúdo do Looker. O SDK incorporado encapsula agora o iFrame, o que significa que os clientes não têm de criar nem gerir o iFrame. O SDK de incorporação destina-se apenas a apps de navegador, mas inclui uma função de utilidade auxiliar para gerar o URL assinado. Ambos estão disponíveis em TypeScript e Python. Embora o SDK de incorporação esteja disponível no registo nmpjs, não precisa de usar um servidor Web Node.js.
Uma funcionalidade única do SDK de incorporação é que também lhe permite tirar partido dos componentes do Looker, uma coleção de blocos de código reutilizáveis que foram criados para ajudar a implementar o sistema de design do Looker.
Outra vantagem do SDK Embed é o número de funções pré-criadas que removem muito do trabalho da sua equipa de desenvolvimento. Um dos principais exemplos é o cancelamento de cliques. O SDK incorporado usa a API MessageChannel
em vez de postMessage
. Isto significa que dois scripts executados na mesma página podem comunicar entre si através da API postMessage
. Isto permite que outras funções comuniquem com o iFrame ou que outras funções comuniquem com o iFrame.
Um exemplo de fluxo de trabalho para o SDK Embed pode ter o seguinte aspeto:
- O utilizador tenta iniciar sessão na sua aplicação.
- Se o início de sessão for bem-sucedido, as informações do utilizador são enviadas para o utilitário auxiliar
Node.js
no servidor que executa a aplicação. Isto transmite as informações necessárias à instância do Looker e é devolvido um URL assinado. - O utilizador navega para a página de dados na aplicação onde o SDK incorporado é usado para posicionar o iFrame. Uma vez que o SDK de incorporação está escrito em JavaScript, podemos usar
LookerEmbedSDK.createDashboardWithId
e segmentar um elemento DOM específico (normalmente, um intervalo ou uma divisão) na página para anexar o iframe (URL assinado). - A página é carregada e o URL assinado carrega o painel de controlo a partir da instância do Looker.
Então… qual é o melhor método?
O método que a sua equipa de desenvolvimento usa depende do seu exemplo de utilização específico:
Conforme mostrado no diagrama anterior, tanto o método do ponto final Create Signed Embed Url
como o método do SDK incorporado descrito anteriormente permitem que a sua equipa de desenvolvimento se concentre no produto em vez de na forma como o Looker se integra com a app. Ambos os métodos também permitem experiências de dados avançadas na sua aplicação nativa.
O método do ponto final Create Signed Embed Url
difere do método do SDK de incorporação nos seguintes aspetos:
- Não requer um segredo de incorporação.
- O processo é semelhante ao da utilização de outras APIs REST.
- O ponto final tem de ser chamado do lado do servidor.
O método do SDK de incorporação tem as seguintes funcionalidades:
- Baseia-se em JavaScript e pode segmentar elementos DOM específicos.
- Interage com os componentes do Looker para ajudar a aplicar estilos à IU.
- Integra-se com funções de utilidade auxiliares e o desenvolvimento pode ser feito do lado do cliente.
Se tiver perguntas específicas sobre os requisitos de desenvolvimento ou arquitetura, pode contactar a equipa de serviços profissionais do Looker ou um dos nossos parceiros de desenvolvimento.
Além disso, a nossa equipa de apoio técnico pode ajudar a resolver problemas de alto nível ou comportamentos inesperados. Pode abrir um pedido de apoio técnico no Centro de Ajuda do Looker clicando em Contacte-nos.
Consulte a publicação da comunidade Ferramentas de incorporação assinadas e recursos de resolução de problemas para ver recursos adicionais.