O repositório do SDK Embed do Looker inclui um exemplo de código e uma demonstração simples do SDK Embed. Devido à atenção que o Looker tem à segurança, a demonstração requer um pouco de configuração. A demonstração também requer sua chave secreta de incorporação do Looker. O secret de incorporação concede acesso a todos os seus dados. Portanto, observe o seguinte:
- Não compartilhe sua chave secreta com pessoas que você não quer que tenham acesso completo à sua instância.
- Não redefina seu secret se você já o estiver usando em outro contexto.
- Não configure seu código para armazenar o secret no navegador da Web.
Etapa 1: ativar a incorporação na sua instância do Looker
Isso é documentado com mais detalhes na página de documentação Incorporação assinada.
- Navegue até Administrador > Incorporação da plataforma na sua instância do Looker. Isso exige privilégios de administrador.
- O servidor de demonstração é executado por padrão em
http://localhost:8080
. Ao adicionar esse endereço à lista de permissões de domínios incorporados, você pode ativar a demonstração para receber mensagens do Looker. - Ative a opção Incorporar autenticação.
- Para visualizar sua chave secreta de incorporação, você deve redefini-la. Copie o secret para um local seguro.
Etapa 2: personalizar as configurações de demonstração da sua instância do Looker
Forneça a chave secreta de incorporação ao servidor. É possível fazer isso de duas maneiras:
- Defina-o como
LOOKER_EMBED_SECRET
no ambiente shell. - Crie um arquivo chamado
.env
na raiz do diretório do SDK. Adicione uma linha a esse arquivo:LOOKER_EMBED_SECRET="YourLookerSecret"
Para fornecer o endereço do host da instância do Looker ao servidor:
- Definindo-o como
LOOKER_EMBED_HOST
no ambiente shell. - Adicionando
LOOKER_EMBED_HOST="yourinstance.looker.com:yourport"
ao arquivo.env
.
Edite o arquivo demo/demo_config.ts
para que ele seja apropriado às páginas que você quer incorporar.
// The address of your Looker instance. Required.
export const lookerHost = 'self-signed.looker.com:9999'
// A dashboard that the user can see. Set to 0 to disable dashboard.
export const dashboardId = 1
// A Look that the user can see. Set to 0 to disable look.
export const lookId = 1
Edite o arquivo demo/demo_user.json
de acordo com o tipo de usuário que você quer incorporar.
{
// External embed user ID. IDs are not shared with regular users. Required
"external_user_id": "user1",
// First and last name. Optional
"first_name": "Pat",
"last_name": "Embed",
// Duration before session expires, in seconds. Required.
"session_length": 3600,
// Enforce logging in with these permissions. Recommended.
"force_logout_login": true,
// External embed group ID. Optional.
"external_group_id": "group1",
// Looker Group IDs. Optional
"group_ids": [],
// Permissions. See documentation for details. Required.
// Can any combination of:
// access_data
// see_looks
// see_user_dashboards
// see_lookml_dashboards
// explore
// create_table_calculations
// download_with_limit
// download_without_limit
// see_drill_overlay
// see_sql
// save_content
// embed_browse_spaces
// schedule_look_emails
// send_to_sftp
// send_to_s3
// send_outgoing_webhook
// schedule_external_look_emails
"permissions": [
"access_data",
"see_looks",
"see_user_dashboards",
"explore"
"save_content",
"embed_browse_spaces"
],
// Model access permissions. Required.
"models": ["powered_by", "thelook"],
// User attributes. Optional.
"user_attributes": { "locale": "en_US" },
}
Etapa 3: criar e executar a demonstração
Servidor de nó
- Executar
npm install
- Executar
npm start
O servidor imprimirá o host e a porta em que está sendo executado. Se ele for diferente de http://localhost:8080
, será necessário adicionar à lista de permissões de domínios incorporados.
Servidor Python
- Executar
npm install
- Executar
npm run python
O servidor imprimirá o host e a porta em que está sendo executado.
Talvez seja necessário pip install six
para instalar a camada de compatibilidade do Python 2/3.