Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Tworzenie klientów OAuth i zarządzanie nimi

OAuth to protokół zabezpieczeń na potrzeby autoryzacji i delegowania. Umożliwia aplikacjom innych firm dostęp do zasobów interfejsu API bez ujawniania poświadczeń użytkownika końcowego. Klient OAuth żąda kodu autoryzacyjnego, wymienia go na token dostępu i używa go do uzyskania dostępu do zawartości Qlik Cloud przez interfejsy API.

Typy klientów OAuth

Klient OAuth to aplikacja internetowa lub oprogramowanie, które żąda dostępu do zasobów w Qlik Cloud w imieniu użytkownika. OAuth definiuje dwa typy klientów: publiczne i poufne, aby zabezpieczyć autoryzację między aplikacją (klientem) a serwerem autoryzacji (Qlik Cloud).

Qlik Cloud obsługuje poufne klienty na potrzeby tradycyjnych aplikacji internetowych (po stronie serwera) oraz klienty publiczne na potrzeby aplikacji natywnych i jednostronicowych przy użyciu określonych przepływów autoryzacji.

Oficjalna specyfikacja OAuth 2.0 dotycząca typów klientów znajduje się w RFC 6749 sekcja 2.1: Typy klientów OAuth 2.0.

Klienty publiczne

Klienty publiczne to aplikacje, które nie używają klucza tajnego klienta, ponieważ nie mogą zachować poufności wymaganych poświadczeń. W Qlik Cloud obejmują one aplikacje frontendowe, takie jak aplikacje jednostronicowe (SPA) z wbudowaną analityką lub niestandardowe rozszerzenia wizualizacji w Qlik Sense wymagające uwierzytelnienia użytkownika.

Klienty poufne

Klienty poufne mogą bezpiecznie przechowywać identyfikator klienta oraz klucz tajny klienta i używać ich do uwierzytelniania na serwerze autoryzacji. Te klienty mogą mieć dostęp do chronionych zasobów, ponieważ są w posiadaniu klucza tajnego klienta.

Przykład: aplikacja internetowa z bezpiecznym zapleczem wchodzącym w interakcję z interfejsami API Qlik Cloud w celu zarządzania dostępem użytkownika lub koordynacji zadań odświeżania danych.

Przepływy autoryzacji OAuth

Qlik obsługuje dwa typy, czyli przepływy nadawania autoryzacji:

  • Przepływ kodu autoryzacji: dla klientów poufnych.

  • Przepływ kodu autoryzacji z Proof Key for Code Exchange (PKCE): dla klientów publicznych.

Przepływ kodu autoryzacji

Ten przepływ jest używany przez aplikacje po stronie serwera, w których kod źródłowy nie jest publicznie ujawniany. Polega ona na wymianie kodu autoryzacyjnego na token dostępu, przy czym do uwierzytelnienia wykorzystywany jest klucz tajny klienta. Aplikacje internetowe korzystające z tej metody muszą działać po stronie serwera, ponieważ podczas wymiany tokena klucz tajny klienta jest przekazywany do serwera autoryzacji.

InformacjaNigdy nie udostępniaj publicznie klucza tajnego klienta, ponieważ zagraża to bezpieczeństwu dzierżawy. Dbaj o jego bezpieczeństwo i prywatność.

Więcej informacji na temat przepływu kodu autoryzacji można znaleźć w oficjalnej dokumentacji OAuth 2.0: Authorization Code Flow.

Przepływ kodu autoryzacji z PKCE

Natywne i jednostronicowe aplikacje nie mogą bezpiecznie przechowywać klucza tajnego klienta, ponieważ ich kod źródłowy może zostać zdekompilowany lub sprawdzony w przeglądarce. PKCE zwiększa bezpieczeństwo, wymagając użycia weryfikatora kodu w celu uzyskania tokena dostępu.

Więcej informacji na temat autoryzacji przy użyciu PKCE można znaleźć w oficjalnej dokumentacji OAuth 2.0: Authorization Code Flow with Proof Key for Code Exchange (PKCE).

Zakresy i uprawnienia OAuth

Zakresy OAuth definiują poziom dostępu przyznawany aplikacjom klienckim OAuth. Na przykład token dostępu może zezwalać na pełny dostęp do zasobów lub ograniczać go tylko do odczytu. W Qlik Cloud zakresy kontrolują dostęp klientów do dostępnych funkcji i zasobów. Bez zakresów klienty nie mogą uzyskać dostępu do żadnych zasobów.

Dostępne zakresy OAuth

Tabela zawiera listę dostępnych zakresów i powiązanych z nimi uprawnień:

Zasięg Uprawnienie
user_default Pełny dostęp do konta i jego zawartości
admin_classic

Pełny dostęp administracyjny do dzierżawy

Zob. także: Wdrażanie rozwiązania Qlik Cloud i administrowanie nim

InformacjaNieobsługiwane w przypadku klientów typu aplikacja jednostronicowa i natywnych.
admin.apps

Odczyt wszystkich aplikacji w dzierżawie i zarządzanie nimi.

Zobacz także: Zarządzanie aplikacjami

Wskazuje element podrzędny admin.apps:export

Eksport wszystkich aplikacji w dzierżawie

Zobacz także: Eksportowanie aplikacji

Wskazuje element podrzędny admin.apps:read

Odczyt wszystkich aplikacji w dzierżawie
admin.automations

Odczyt wszystkich automatyzacji w dzierżawie i zarządzanie nimi

Zobacz także: Zarządzanie automatyzacjami

Wskazuje element podrzędny admin.automations:read

Odczyt wszystkich automatyzacji w dzierżawie
admin.spaces

Odczyt wszystkich przestrzeni w dzierżawie i zarządzanie nimi

Zobacz także: Zarządzanie przestrzeniami

Wskazuje element podrzędny admin.spaces:read

Odczyt wszystkich przestrzeni w dzierżawie
aplikacje

Odczyt aplikacji i zarządzanie nimi

Zobacz także: Zarządzanie aplikacjami

Wskazuje element podrzędny apps:export

Eksport aplikacji

Zobacz także: Eksportowanie aplikacji

Wskazuje element podrzędny apps:read

Odczyt aplikacji
Automatyzacje:

Odczyt automatyzacji i zarządzanie nimi

Zobacz także: Zarządzanie automatyzacjami

Wskazuje element podrzędny automations:read

Odczyt automatyzacji
automl-experiments Odczyt eksperymentów uczenia maszynowego i zarządzanie nimi
automl-deployments Odczyt wdrożeń uczenia maszynowego i zarządzanie nimi
identity.email:read

Odczyt adresu e-mail

Zobacz także: Dostawcy tożsamości w Qlik Cloud

identity.name:read

Odczyt imienia i nazwiska
identity.picture:read

Odczyt zdjęcia profilowego

Zobacz także: Dostawcy tożsamości w Qlik Cloud

identity.subject:read

Odczyt identyfikatora podmiotu użytkownika
spaces.data

Odczyt przestrzeni danych i zarządzanie nimi

Zobacz także: Zarządzanie przestrzeniami

Wskazuje element podrzędny spaces.data:read

Odczyt przestrzeni danych
spaces.managed

Odczyt przestrzeni zarządzanych i zarządzanie nimi

Zobacz także: Zarządzanie przestrzeniami

Wskazuje element podrzędny spaces.managed:read

Odczyt przestrzeni zarządzanych
spaces.shared

Odczyt przestrzeni udostępnionych i zarządzanie nimi

Zobacz także: Zarządzanie przestrzeniami

Wskazuje element podrzędny spaces.shared:read

Odczyt przestrzeni udostępnionych
offline_access

Dostęp do zasobów w trybie offline

InformacjaNieobsługiwane w przypadku klientów typu aplikacja jednostronicowa.
InformacjaTa lista odzwierciedla zakresy obsługiwane w wydaniu początkowym. Pełną listę zakresów można znaleźć w Portalu dla deweloperów Qlik w sekcji Zakresy OAuth.

Tworzenie klientów OAuth

Klientami OAuth zarządzają administratorzy dzierżawy z centrum aktywności Administrowanie na stronie OAuth. Klient OAuth umożliwia integrację aplikacji klienckiej z Qlik Cloud w celu bezpiecznego uzyskiwania dostępu do zasobów.

Ograniczenia dotyczące klientów OAuth

Obowiązują następujące ograniczenia:

  • Maksymalnie 5 przekierowanych adresów URL na klienta.

  • Maksymalnie 5 dozwolonych początków na klienta.

  • Maksymalnie 5 kluczy tajnych klienta na klienta.

  • Maksymalnie 200 klientów OAuth na dzierżawę.

Kroki tworzenia klienta OAuth

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie wybierz pozycję OAuth.

  2. Kliknij polecenie Utwórz nowe.

  3. Wybierz typ klienta:

    • Web dla klientów poufnych.

    • Aplikacja jednostronicowa lub natywna dla klientów publicznych.

  4. W oknie dialogowym wprowadź nazwę klienta OAuth.

  5. Opcjonalnie dodaj opis.

  6. Wybierz dowolny z dostępnych zakresów, przewijając lub korzystając z pola wyszukiwania.

    WskazówkaUżyj przycisków Wszystkie lub Wybrane nad listą, aby wyświetlić wszystkie lub tylko wybrane zakresy.
  7. Wprowadź jeden lub więcej adresów URL przekierowania aplikacji klienckiej OAuth (maksymalnie 5). Następnie kliknij przycisk Dodaj, aby dodać adres URL przekierowania do listy dozwolonych.

    • Adres URL przekierowania to adres URL, pod który serwer autoryzacji kieruje przeglądarkę użytkownika po pomyślnym uwierzytelnieniu i przyznaniu uprawnień aplikacji klienckiej. Na przykład https://www.przykladowaaplikacja.com/oauth/callback, gdzie /oauth/callback obsługuje wywołania zwrotne uwierzytelniania od dostawcy OAuth.

    • Qlik Cloud przekieruje użytkownika z powrotem do aplikacji po pomyślnej autoryzacji tylko wtedy, gdy adres URL będzie znajdować się na liście dozwolonych adresów URL przekierowania.

    • Adresy URL muszą zaczynać się od https://, chyba że domeną jest localhost — w takim przypadku może zaczynać się od http://. Aplikacje natywne mogą również używać formatu łącza specyficznego dla aplikacji, na przykład przykladowaaplikacja://.

  8. W przypadku klienta typu Web lub Aplikacja jednostronicowa określ jedno lub więcej dozwolonych pochodzeń (maksymalnie 5).

    • Dostęp do aplikacji zostanie przyznany tylko wtedy, gdy adres URL zostanie dodany do listy dozwolonych źródeł.

  9. W przypadku klienta typu Web można włączyć jedną z poniższych opcji automatycznego dostępu do systemu bez interakcji z użytkownikiem:

    • Zezwól na dostęp maszyna-maszyna (M2M): umożliwia komunikację między systemami bez udziału użytkownika.

    • Zezwól na personifikację użytkowników w interakcjach M2M: umożliwia aplikacji uwierzytelnianie w imieniu użytkowników, aby działała jako oni podczas procesu uwierzytelniania.

  10. Kliknij polecenie Utwórz.

  11. Kliknij Kopiuj do schowka, aby zapisać identyfikator klienta i klucz tajny klienta do późniejszego wykorzystania. Przechowuj klucz tajny klienta w bezpiecznej lokalizacji.

    InformacjaKlienty publiczne nie mają żadnych kluczy tajnych klienta.
  12. Kliknij przycisk Gotowe.

Klienty OAuth do konkretnych zastosowań

Zastosowania klientów OAuth można znaleźć w następujących zasobach:

Tworzenie klienta OAuth dla dodatku Qlik do programu Microsoft Excel

Do zainstalowania dodatku Qlik do programu Microsoft Excel wymagana jest konfiguracja klienta OAuth. Dodatek jest używany przez twórców raportów do przygotowywania szablonów raportów, które kontrolują wyniki raportów tabelarycznych z aplikacji Qlik Sense.

Aby protokół OAuth działał w dodatku, klient OAuth musi być skonfigurowany dokładnie tak, jak pokazano poniżej.

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie, w Qlik Cloud, przejdź do OAuth.

  2. Kliknij polecenie Utwórz nowe.

  3. Z menu rozwijanego Typ klienta wybierz opcję Aplikacja jednostronicowa. Pojawi się więcej pól.

  4. Wstaw Nazwę. Opis jest opcjonalny.

  5. Zaznacz co najmniej pole wyboru, aby uwzględnić zakres user_default. Można też uwzględnić inne zakresy w konfiguracji, ale bez user_default instalacja nie będzie działać.

    Pełny opis każdego dostępnego zakresu zawiera temat Dostępne zakresy OAuth.

  6. W polu Dodaj adresy URL przekierowania wstaw adres URL swojej dzierżawy, a następnie stały ciąg znaków: /office-add-ins/oAuthLoginSuccess.html

    Rezultat powinien wyglądać następująco: https://YourServer/office-add-ins/oAuthLoginSuccess.html

  7. Kliknij Dodaj.

  8. W polu Dodaj dozwolone pochodzenia wpisz adres URL dzierżawy i kliknij przycisk Dodaj.

  9. Kliknij polecenie Utwórz.

  10. Pojawi się okno Skopiuj identyfikator klienta. Możesz skopiować identyfikator klienta do schowka lub kliknąć Gotowe, aby zamknąć okno.

Po utworzeniu klienta OAuth uzyskaj łącze do zaktualizowanego pliku manifestu XML z centrum aktywności Administrowanie. Przejdź do strony Ustawienia, a następnie wybierz Udostępnianie i raporty > Dodatek Excel w centrum aktywności Administrowanie. Użyj tego łącza, aby wdrożyć i zainstalować dodatek.

Więcej informacji na temat generowania pliku manifestu, a także wdrażania i instalowania dodatku, zawiera temat:

Tworzenie klienta OAuth do anonimowego osadzania zawartości aplikacji.

Aby osadzić zawartość aplikacji do dostępu anonimowego za pomocą qlik-embed, należy utworzyć klienta OAuth z typem specjalnie przeznaczonym do tego zastosowania.

Informacja Funkcja ta jest dostępna tylko w subskrypcji Qlik Anonymous Access. Więcej informacji zawiera temat Subskrypcje Qlik Anonymous Access.

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie przejdź do sekcji OAuth.

  2. Kliknij polecenie Utwórz nowe.

  3. Z menu rozwijanego Typ klienta wybierz opcję Osadzenie anonimowe.

  4. Wprowadź Nazwę oraz opcjonalny Opis klienta OAuth.

  5. W sekcji Dozwolone pochodzenia wprowadź każde pochodzenie, które potrzebujesz autoryzować. Są to domeny, które będą uzyskiwać dostęp do dzierżawy Qlik Cloud w celu pobrania informacji do analizy wbudowanej.

    Kliknij Dodaj po wstawieniu każdego adresu URL.

  6. Na zakończenie kliknij Utwórz.

  7. Kliknij Kopiuj do schowka, aby zapisać identyfikator klienta do późniejszego wykorzystania. Będzie on potrzebny, gdy zawartość aplikacji zostanie osadzona przy użyciu qlik-embed.

  8. Kliknij przycisk Gotowe.

Edytowanie klientów OAuth

Możesz zmienić nazwę klienta OAuth, zaktualizować opis lub zarządzać adresami URL przekierowania.

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie wybierz pozycję OAuth.
  2. Zlokalizuj klienta OAuth do edycji.
  3. Kliknij Więcej, a następnie wybierz Edytuj.
  4. Odpowiednio zmień opcje klienta OAuth.
  5. Kliknij przycisk Zapisz.

Usuwanie klientów OAuth

Możesz usunąć klienta OAuth, gdy nie jest już potrzebny lub aby odebrać dostęp.

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie wybierz pozycję OAuth.

  2. Wybierz jednego lub więcej klientów Oauth do usunięcia, a następnie kliknij Usuń.

  3. Potwierdź usunięcie.

Publikowanie klientów OAuth

Klienty OAuth są początkowo powiązane z dzierżawą, która je utworzyła. Można jednak skonfigurować klienta OAuth tak, aby był współdzielony przez wiele dzierżaw w tym samym regionie. Umożliwia to aplikacjom innych firm korzystanie z tego samego identyfikatora klienta w różnych dzierżawach Qlik Cloud.

Właściciele aplikacji mogą używać kluczy tajnych rotacyjnie i aktualizować konfigurację bez interakcji z administratorem dzierżawy. Administratorzy dzierżawy nie muszą zarządzać poświadczeniami ani znać żadnych szczegółów konfiguracji opublikowanego klienta.

Aby umożliwić innym dzierżawom łączenie się z klientem OAuth, należy go opublikować.

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie wybierz pozycję OAuth.
  2. Zlokalizuj klienta OAuth do publikacji.
  3. Kliknij Więcej obok klienta, a następnie wybierz Opublikuj.
  4. Kliknij OK, aby to potwierdzić.

Po opublikowaniu klienta OAuth staje się on dostępny do użytku zewnętrznego przez inne dzierżawy. Gdy użytkownik przejdzie do zewnętrznej witryny internetowej korzystającej z Qlik OAuth, zostanie poproszony o podanie nazwy hosta swojej dzierżawy i swoje poświadczenia użytkownika, chyba że ma już aktywną sesję SaaS.

Pierwsze logowanie będzie wymagało zgody administratora dzierżawy. Po zatwierdzeniu klient OAuth pojawi się w centrum aktywności Administrowanie dzierżawy.

Metody udzielania zgody

Qlik Cloud domyślnie prosi użytkowników o wyrażenie zgody podczas uwierzytelniania. Aby usprawnić ten proces, zwłaszcza w przypadku zaufanych aplikacji, można ustawić metodę wyrażania zgody na „Zaufana”, co spowoduje pominięcie monitu o zgodę.

Istnieją dwie opcje wyrażenia zgody:

  • Wymagana: użytkownik jest o nią proszony za każdym razem, gdy klient OAuth zażąda nowego zakresu. Ta metoda zapewnia wyraźne zatwierdzenie użytkownika na każdym poziomie dostępu.

  • Zaufana: użytkownik nie jest proszony o udzielenie zgody. Ta opcja jest dostępna tylko w przypadku nieopublikowanych klientów. W przypadku opublikowanych klientów metoda wyrażania zgody jest zawsze Wymagana, aby zachować bezpieczeństwo w różnych dzierżawach.

InformacjaW przypadku klientów używanych jako maszyna-maszyna (M2M), metoda wyrażania zgody musi zostać zmieniona na Zaufaną po utworzeniu klienta.

Zmiana metody udzielania zgody

Aby zmienić metodę udzielania zgody dla klienta OAuth, wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie wybierz pozycję OAuth.
  2. W kliencie OAuth kliknij Więcej i wybierz Zmień metodę udzielenia zgody.
  3. Wybierz opcję Wymagana lub Zaufana, a następnie kliknij przycisk Zmień metodę udzielania zgody.

Przeglądanie i kopiowanie konfiguracji OAuth

W sekcji OAuth centrum aktywności Administrowanie wybierz opcję Wyświetl konfigurację OAuth, aby wyświetlić szczegóły uwierzytelniania dla dzierżawy Qlik Cloud. Spowoduje to wyświetlenie fragmentu kodu z punktami końcowymi i ustawieniami OAuth, a także adresem URL, który można skopiować do użytku w aplikacjach zewnętrznych.

Można użyć tej konfiguracji do integracji Qlik Cloud z aplikacjami innych firm, automatyzacji dostępu do API lub skonfigurowania uwierzytelniania dla wbudowanej analityki.

Zarządzanie kluczami tajnymi klienta

Jeśli klucz tajny klienta zostanie naruszony lub jeśli polityka bezpieczeństwa wymaga okresowych aktualizacji, możesz dodać lub usunąć klucze tajne. Aby uniknąć przestojów, można dodać wiele kluczy tajnych klienta (maksymalnie 5), zaktualizować aplikację kliencką, a następnie usunąć stary klucz tajny.

Dodawanie klucza tajnego klienta

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie wybierz pozycję OAuth.
  2. Lokalizacja klienta OAuth.
  3. Kliknij Więcej, a następnie wybierz Zarządzaj kluczami tajnymi.
  4. Kliknij Utwórz nowy klucz tajny klienta.
  5. Skopiuj klucz tajny klienta i identyfikator klienta i przechowuj je w bezpieczny sposób.

    InformacjaKlucz tajny klienta nie będzie już później dostępny.
  6. Kliknij polecenie Zamknij.

Usuwanie klucza tajnego klienta

Wykonaj następujące czynności:

  1. W centrum aktywności Administrowanie wybierz pozycję OAuth.
  2. Lokalizacja klienta OAuth.
  3. Kliknij Więcej, a następnie wybierz Zarządzaj kluczami tajnymi.
  4. Kliknij Usuń obok klucza tajnego klienta.
  5. Kliknij polecenie Zamknij.

Tworzenie aplikacji klienckich Oauth w celu uzyskiwania dostępu do Qlik Cloud

Po zarejestrowaniu klienta OAuth w Qlik Cloud możesz używać powiązanego identyfikatora klienta i klucza tajnego klienta w swojej aplikacji klienckiej OAuth.

Aby uzyskać wskazówki krok po kroku, zapoznaj się z samouczkami w sekcji Przegląd OAuth w Portalu dla deweloperów Qlik. Te samouczki obejmują tworzenie aplikacji klienckich przy użyciu popularnych języków programowania.

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!