Podpisane umieszczanie w Lookerze

1. Zanim zaczniesz

Podpisywanie osadzania to sposób na prywatne prezentowanie osadzonych ujęć, wizualizacji, wglądów lub paneli użytkownikom bez konieczności logowania się przez nich w Lookerze. Zamiast tego użytkownicy będą uwierzytelniani za pomocą Twojej aplikacji.

Podpisane umieszczanie zaczyna się od utworzenia specjalnego adresu URL Lookera, który będzie używany w elemencie iframe. Adres URL zawiera informacje, które chcesz udostępnić, identyfikator użytkownika w Twoim systemie oraz uprawnienia, które chcesz mu przyznać. Następnie podpisz URL tajnym kluczem dostarczonym przez Lookera.

Wymagania wstępne

  • mieć uruchomioną instancję Lookera;
  • musisz być administratorem instancji Lookera;

Czego się nauczysz

  • Jak skonfigurować instancję Lookera, aby umożliwić osadzanie z podpisem
  • Jak wygenerować klucz obiektu tajnego
  • Jakie informacje musisz zebrać, aby umieścić je w podpisanym adresie URL do umieszczania
  • Jak wygenerować podpisany adres URL do umieszczenia
  • Jak dodać element do aplikacji

2. Właściwy hosting Lookera

Niektóre przeglądarki domyślnie stosują zasady bezpieczeństwa, które blokują pliki cookie innych firm, co uniemożliwia działanie podpisanego osadzania. W tym przypadku najprostszym sposobem rozwiązania tego problemu jest tymczasowe zezwolenie na pliki cookie innych firm w przeglądarce:

W konfiguracji produkcyjnej musisz wybrać jedną z tych strategii dotyczących plików cookie innych firm:

  • Umieść instancję Lookera i aplikacje, w których będziesz używać podpisanego osadzania, w tej samej domenie. Na przykład instancja Lookera może znajdować się pod adresem looker.mycompany.com, a witryna z podpisanym osadzaniem – pod adresem analytics.mycompany.com.
  • Włącz funkcję Osadzanie bez plików cookie, która umożliwia przeglądarkom blokującym pliki cookie innych firm uwierzytelnianie w różnych domenach. Korzystanie z tej opcji wymaga dodatkowej konfiguracji, jak opisano na stronie dokumentacji Lookera dotyczącej osadzania bez plików cookie.

3. Generowanie klucza obiektu tajnego

Aby utworzyć podpisany adres URL do umieszczenia, potrzebujesz klucza tajnego z Lookera. Aby to zrobić:

  1. Otwórz stronę Osadzanie w sekcji Administracja w Lookerze.
  2. W menu Embed SSO Authentication (Osadź uwierzytelnianie SSO) wybierz Enabled (Włączone), a następnie kliknij Update (Zaktualizuj).
  3. Aby wygenerować tajny klucz do umieszczania, w sekcji Umieść tajny klucz kliknij przycisk Zresetuj tajny klucz.

Skopiuj ten klucz tajny w bezpieczne miejsce, ponieważ nie będzie można go pobrać z Lookera bez zresetowania. Zresetowanie klucza spowoduje, że wszystkie osadzenia, które używały starego klucza, przestaną działać.

4. Zbieranie danych wejściowych do podpisanego adresu URL do umieszczenia

Aby utworzyć podpisany adres URL do umieszczania, musisz zebrać te informacje:

URL danych do wyświetlenia

Pobierz adres URL widoku, eksploracji, wizualizacji zapytania lub panelu, który chcesz umieścić. Następnie usuń domenę i przed ścieżką wstaw znak /embed.

Na przykład https://instance_name.cloud.looker.com/looks/4 zmieni się na /embed/looks/4.

lub https://instance_name.cloud.looker.com/explore/my_model/my_explore zmieni się w /embed/explore/my_model/my_explore.

Uprawnienia, które chcesz przyznać użytkownikowi

Wybierz uprawnienia, które chcesz przyznać użytkownikowi osadzonemu. Odpowiednie uprawnienia do podpisanego umieszczania znajdziesz na stronie dokumentacji Lookera dotyczącej podpisanego umieszczania.

Na potrzeby tego laboratorium minimalna lista uprawnień prawdopodobnie będzie wyglądać tak:

  • access_data
  • see_lookml_dashboards
  • see_looks
  • see_user_dashboards
  • explore

Jeśli chcesz sprawdzić, czy użytkownicy mogą przeglądać i zapisywać treści, możesz też rozważyć:

  • save_content
  • embed_browse_spaces
  • embed_save_shared_space

Dostęp do modelu, który ma mieć użytkownik

Wybierz modele Lookera, do których osadzony użytkownik ma mieć dostęp. Użytkownik powinien mieć co najmniej dostęp do modelu, na którym opiera się wybrany przez Ciebie widok, eksploracja, wizualizacja zapytania lub panel informacyjny.

Atrybuty użytkownika, które mają być przypisane do osadzonego użytkownika

Wybierz atrybuty użytkownika Lookera, które ma mieć osadzony użytkownik (jeśli dotyczy). W tym ćwiczeniu nie musisz dodawać żadnych atrybutów użytkownika.

Grupy, do których ma należeć osadzony użytkownik

Określ ewentualne identyfikatory grup (nie nazwy grup), do których powinien należeć użytkownik. W tym ćwiczeniu nie musisz dodawać żadnych grup.

Identyfikator użytkownika i grupa w Twojej firmie

Podpisane adresy URL wbudowanych elementów Lookera wymagają podania unikalnego identyfikatora każdego użytkownika aplikacji, który wyświetla wbudowany element Lookera. Looker nazywa go „identyfikatorem użytkownika zewnętrznego” i może to być dowolny ciąg znaków.

W razie potrzeby możesz też podać „identyfikator grupy zewnętrznej”. Jest to unikalny identyfikator grupy, do której należy użytkownik w Twojej aplikacji.

5. Wybierz skrypt generowania adresów URL

Aby utworzyć prawidłowy podpisany adres URL do umieszczania, musisz użyć kodu, aby prawidłowo zakodować adres URL za pomocą tajnego klucza i wygenerować inne elementy związane z bezpieczeństwem.

Na szczęście w repozytorium GitHub looker_embed_sso_examples Lookera dostępnych jest kilka przykładowych skryptów w różnych językach programowania. Wybierz odpowiedni skrypt i skopiuj go do środowiska programistycznego.

6. Wypełnianie danych i uruchamianie skryptu

Wybrany skrypt generowania adresu URL będzie zawierać zmienne lub obiekt, w którym możesz umieścić wszystkie wcześniej zebrane informacje, a także przykłady tego, jak te informacje powinny być prezentowane:

Nazwa skryptu

Przybliżona liczba wierszy do wpisania

LookerEmbedClientExample.java

15–28

csharp_example.cs

18–35

go_example.go

193–202

node_example.js

87–104

python_example.py

103 - 111

ruby_example.rb

88–101

sso_embed.php

14–27

Po zastąpieniu przykładów zebranymi danymi uruchom skrypt, aby wygenerować podpisany adres URL do umieszczania. Zapisz adres URL, aby użyć go w następnym kroku.

7. Testowanie adresu URL

Aby przetestować końcowy adres URL, wklej go do walidatora identyfikatorów URI do osadzania na stronie Osadzanie w sekcji Administracja w Lookerze. Ta funkcja nie może określić, czy dane i uprawnienia, które chcesz skonfigurować, zostały ustawione prawidłowo, ale może sprawdzić, czy uwierzytelnianie działa poprawnie.

8. Umieść adres URL w elemencie iframe.

Na koniec umieść Look, eksplorację, wizualizację zapytania lub panel informacyjny w aplikacji, dodając wygenerowany adres URL do atrybutu src elementu iframe. Umieść ten element iframe w aplikacji lub środowisku testowym.

W razie potrzeby możesz wchodzić w interakcje z elementem iframe za pomocą JavaScriptu, korzystając z osadzonych zdarzeń JavaScriptu Lookera.

9. Dodatkowe informacje

Funkcję podpisanego osadzania Lookera należy starannie skonfigurować, aby mieć pewność, że osadzeni użytkownicy mają dostęp tylko do wybranych danych i uprawnień. Pamiętaj o tych kwestiach:

  • Na stronie dokumentacji Signed embedding (Podpisywanie osadzania) znajdziesz szczegółowe informacje o tym, jak wygenerować podpisany adres URL osadzania, a także wszystkie dostępne opcje konfiguracji.
  • Na stronie dokumentacji Sprawdzone metody zabezpieczania analizy zagnieżdżonej znajdziesz wskazówki dotyczące bezpiecznej konfiguracji podpisanego zagnieżdżania.
  • Podpisane osadzanie jest często używane przez klientów Lookera do prezentowania danych własnym klientom, przy jednoczesnym wymaganiu, aby klienci z różnych firm lub grup nie wiedzieli o sobie nawzajem. W takim przypadku zdecydowanie zalecamy skonfigurowanie Lookera jako systemu zamkniętego, czasami nazywanego „instalacją wielodostępną”.
  • Funkcja podpisanego osadzania jest dostępna w interfejsie API Lookera.