1. Antes de começar
A incorporação assinada é uma maneira de apresentar Looks, visualizações, Análises ou painéis incorporados de forma privada aos seus usuários sem exigir que eles tenham um login separado do Looker. Em vez disso, os usuários serão autenticados pelo seu próprio aplicativo.
A incorporação assinada começa com a criação de um URL especial do Looker que você vai usar em um iframe. O URL contém as informações que você quer compartilhar, o ID do usuário no seu sistema e as permissões que você quer conceder a ele. Em seguida, assine o URL com uma chave secreta fornecida pelo Looker.
Pré-requisitos
- Ter uma instância do Looker em execução
- Ser administrador na sua instância do Looker
O que você vai aprender
- Como configurar sua instância do Looker para permitir a incorporação assinada
- Como gerar uma chave secreta
- Quais informações você precisa coletar para inclusão no URL assinado incorporado
- Como gerar um URL de incorporação assinado
- Como adicionar o item incorporado ao aplicativo
2. Hospedagem adequada do Looker
Alguns navegadores usam por padrão uma política de segurança que bloqueia cookies de terceiros, o que impede o funcionamento da incorporação assinada. Para este codelab, a maneira mais simples de resolver esse problema é permitir temporariamente cookies de terceiros no seu navegador:
Em uma configuração de produção, escolha uma das seguintes estratégias para lidar com cookies de terceiros:
- Coloque a instância do Looker e os aplicativos em que você vai usar a incorporação assinada no mesmo domínio. Por exemplo, sua instância do Looker pode ser encontrada em
looker.mycompany.com
, enquanto seu site de incorporação assinada estava emanalytics.mycompany.com
. - Ative o recurso incorporação sem cookies, que permite que navegadores que bloqueiam cookies de terceiros façam a autenticação em diferentes domínios. O uso dessa opção exige uma configuração adicional, conforme detalhado na página de documentação Incorporação sem cookies do Looker.
3. Gerar uma chave secreta
Para criar um URL de incorporação assinado, você precisa de uma chave secreta do Looker. Para fazer isso, siga estas etapas:
- Acesse a página Incorporar na seção Administrador do Looker.
- Selecione Ativado no menu suspenso Incorporar autenticação de SSO e clique em Atualizar.
- Selecione o botão Redefinir secret na seção Incorporar secret para gerar seu secret de incorporação.
Copie esse segredo para um local seguro, porque não será possível recuperá-lo do Looker sem redefini-lo. A redefinição da chave vai interromper todas as incorporações que usavam a chave antiga.
4. Reunir entradas para o URL incorporado assinado
Para criar um URL de incorporação assinado, você precisa reunir as seguintes informações.
URL dos dados a serem mostrados
Recupere o URL do Look, da Análise, da visualização de consulta ou do painel que você quer incorporar. Em seguida, remova o domínio e coloque /embed
antes do caminho.
Por exemplo, https://instance_name.cloud.looker.com/looks/4
ficaria /embed/looks/4
.
Ou, https://instance_name.cloud.looker.com/explore/my_model/my_explore
se tornaria /embed/explore/my_model/my_explore
.
Permissões que você quer que o usuário incorporado tenha
Escolha as permissões que você quer conceder ao usuário incorporado. As permissões relevantes para incorporação assinada podem ser encontradas na página de documentação Incorporação assinada do Looker.
Para os fins deste codelab, as seguintes permissões provavelmente serão uma lista mínima viável:
access_data
see_lookml_dashboards
see_looks
see_user_dashboards
explore
Se você quiser testar a capacidade dos usuários incorporados de navegar e salvar conteúdo, considere também:
save_content
embed_browse_spaces
embed_save_shared_space
Acesso ao modelo que você quer que o usuário incorporado tenha
Escolha os modelos do Looker que você quer que o usuário incorporado tenha acesso. No mínimo, o usuário precisa ter acesso ao modelo que embasa o Look, a Análise, a visualização de consulta ou o painel escolhido para exibição.
Atributos de usuário que você quer que o usuário incorporado tenha
Escolha os atributos do usuário do Looker que você quer que o usuário incorporado tenha, se houver. Para este codelab, talvez não seja necessário adicionar atributos de usuário.
Grupos que você quer que o usuário incorporado tenha
Determine a quais IDs de grupo (não nomes de grupo) o usuário deve pertencer, se for o caso. Para este codelab, talvez não seja necessário adicionar grupos.
O ID de usuário e o grupo da sua empresa
Os URLs de incorporação assinados do Looker exigem que você forneça um identificador exclusivo para cada usuário no aplicativo que visualiza um elemento incorporado do Looker. O Looker chama isso de "ID de usuário externo", e pode ser qualquer string.
Se for relevante, você também pode fornecer um "ID de grupo externo". É um identificador exclusivo do grupo a que o usuário pertence no seu aplicativo.
5. Escolher seu script de geração de URL
Para criar um URL de incorporação assinado adequado, é necessário usar código para codificar o URL com sua chave secreta e gerar outros itens relacionados à segurança.
Felizmente, vários scripts de exemplo em várias linguagens de programação estão disponíveis no repositório do GitHub looker_embed_sso_examples (em inglês) do Looker. Escolha o script relevante para você e copie-o no seu ambiente de desenvolvimento.
6. Preencher dados e executar script
O script de geração de URL escolhido terá variáveis ou um objeto em que você pode colocar todas as informações coletadas anteriormente, além de exemplos de como essas informações devem ser apresentadas:
Nome do script | Linhas aproximadas para sua entrada |
| 15 - 28 |
| 18 a 35 |
| 193 a 202 |
| 87 a 104 |
| 103 - 111 |
| 88 a 101 |
| 14 a 27 |
Depois de substituir os exemplos pelos dados coletados, execute o script para gerar o URL incorporado assinado. Anote o URL para a próxima etapa.
7. Testar o URL
Para testar seu URL final, cole-o no Validador de URI de incorporação na página Incorporar da seção Administrador do Looker. Embora esse recurso não possa determinar se os dados e as permissões que você imagina foram configurados corretamente, ele pode validar se sua autenticação está funcionando corretamente.
8. Incorporar o URL em um iframe
Por fim, incorpore o Look, a análise detalhada, a visualização de consulta ou o painel ao aplicativo adicionando o URL gerado ao atributo src
de um iframe
. Coloque esse iframe no aplicativo ou ambiente de teste.
Se quiser, interaja com o iframe usando JavaScript com os eventos JavaScript incorporados do Looker.
9. Informações adicionais
O recurso de incorporação assinada do Looker precisa ser configurado com cuidado para garantir que os usuários incorporados tenham apenas a visibilidade e as permissões de dados desejadas. Considere o seguinte:
- A página de documentação Incorporação assinada do Looker oferece detalhes sobre como um URL de incorporação assinada deve ser gerado, além de todas as opções de configuração disponíveis.
- A página de documentação Práticas recomendadas de segurança para análise incorporada do Looker oferece orientações para configurar a incorporação assinada com segurança.
- A incorporação assinada é usada com frequência por clientes do Looker para apresentar dados aos próprios clientes, exigindo que clientes de diferentes empresas ou grupos não se conheçam. Nesse cenário, recomendamos que você configure o Looker como um sistema fechado, às vezes chamado de "instalação multitenant".
- A funcionalidade de incorporação assinada está disponível na API do Looker.