Udostępnij przez


Dodawanie zasobów do aplikacji Databricks

Aplikacje Databricks mogą integrować się z różnymi funkcjami platformy Azure Databricks, takimi jak Databricks SQL do wykonywania zapytań danych, Lakeflow Jobs do pozyskiwania i przetwarzania danych, Mosaic AI Model Serving do uzyskiwania dostępu do generatywnych modeli AI oraz tajemnice Azure Databricks do zarządzania poufnymi informacjami. W kontekście aplikacji te funkcje platformy są określane jako zasoby.

Dlaczego warto używać zasobów?

Aby zachować przenośność i bezpieczeństwo aplikacji, należy unikać stałych identyfikatorów zasobów. Na przykład zamiast osadzania stałego identyfikatora usługi SQL Warehouse w kodzie aplikacji skonfiguruj usługę SQL Warehouse jako zasób za pomocą interfejsu użytkownika usługi Databricks Apps.

Korzystanie z zasobów usługi Databricks Apps zamiast bezpośrednich wywołań interfejsu API ma kilka korzyści:

  • Automatycznie zarządza poświadczeniami i uprawnieniami, co eliminuje ręczną obsługę tokenów w kodzie.
  • Automatycznie obsługuje ścieżki zasobów, punkty końcowe i szczegóły połączenia.
  • Zapewnia bezpieczny, zarządzany dostęp zamiast wymagać poświadczeń zarządzanych przez siebie na potrzeby bezpośrednich wywołań interfejsu API.
  • Umożliwia przenoszenie aplikacji między środowiskami bez wprowadzania zmian w kodzie.

Obsługiwane typy zasobów

W poniższej tabeli wymieniono wszystkie typy zasobów, które można dodać do aplikacji usługi Databricks:

Typ zasobu Description Domyślny klucz zasobu Dostępne uprawnienia
Przestrzeń Genie Interfejs analizy opartej na sztucznej inteligencji na potrzeby zapytań w języku naturalnym genie-space
  • Może wyświetlać
  • Można uruchomić
  • Może edytować
  • Może zarządzać
Baza danych Lakebase Baza danych Katalogu Unity do przechowywania i przetwarzania zapytań dotyczących danych database
  • Może łączyć się i tworzyć
Zadanie Lakeflow Przepływy pracy pozyskiwania i przetwarzania danych job
  • Może wyświetlać
  • Może zarządzać uruchomieniem
  • Może zarządzać
Eksperymenty MLflow Śledzenie eksperymentów uczenia maszynowego i zarządzanie cyklem życia modelu experiment
  • Może odczytywać
  • Może edytować
  • Może zarządzać
Punkt końcowy obsługujący model Wdrażanie modelu uczenia maszynowego dla żądań wnioskowania serving-endpoint
  • Może wyświetlać
  • Może wykonywać zapytania
  • Może zarządzać
Wpis tajny Bezpieczny magazyn dla poufnych wartości, takich jak klucze interfejsu API i tokeny secret
  • Może odczytywać
  • Może zapisywać
  • Może zarządzać
SQL Warehouse Zasoby obliczeniowe do uruchamiania zapytań SQL sql-warehouse
  • Może używać
  • Może zarządzać
Połączenie katalogu Unity Połączenia zarządzane z zewnętrznymi źródłami danych connection
  • Korzystanie z połączenia
Funkcja zdefiniowana przez użytkownika Zarejestrowane funkcje SQL i Python w Unity Catalog function
  • Może wykonać
Wolumin wykazu aparatu Unity Przechowywanie plików w Unity Catalog dla artefaktów i danych aplikacji volume
  • Może odczytywać
  • Może odczytywać i zapisywać
Indeks wyszukiwania wektorowego Semantyczne wyszukiwanie i pobieranie oparte na podobieństwie z osadzonych wektorów vector-search-index
  • Może wybrać

Warunki wstępne

Aby dodać zasób do aplikacji, muszą zostać spełnione następujące warunki:

  • Zasób musi istnieć.
  • Użytkownik dodający zasób musi mieć Can manage uprawnienia do zasobu oraz aplikacji.

Aplikacje działają z najniższymi uprawnieniami i polegają na istniejących zasobach na platformie Azure Databricks. Po wdrożeniu główna jednostka usługowa aplikacji uzyskuje dostęp do tych zasobów i musi mieć niezbędne uprawnienia, takie jak dostęp na poziomie tabeli dla zapytań SQL lub dostęp do odczytu do tajemnic. Zobacz Konfigurowanie autoryzacji w aplikacji usługi Databricks.

Konfigurowanie zasobów dla aplikacji

Zasoby umożliwiają aplikacji bezpieczne łączenie się z usługami, od których zależy, bez trwałego kodowania poufnych lub specyficznych dla środowiska wartości.

Dodawanie zasobów bezpośrednio w interfejsie użytkownika aplikacji usługi Databricks podczas tworzenia lub edytowania aplikacji.

  1. Podczas tworzenia lub edytowania aplikacji przejdź do kroku Konfigurowanie .
  2. W sekcji Zasoby aplikacji kliknij pozycję + Dodaj zasób.
  3. Wybierz typ zasobu, który chcesz dodać.
  4. Ustaw uprawnienia dla jednostki usługi app service w zasobie.
  5. Przypisz klucz do zasobu i odwołaj się do tego klucza w app.yaml pliku.

Dodawanie usługi SQL Warehouse jako zasobu aplikacji w interfejsie użytkownika

Zarządzanie dostępem aplikacji do zasobów

Każda aplikacja ma dedykowaną jednostkę usługi. Postępuj zgodnie z tymi najlepszymi rozwiązaniami, aby bezpiecznie zarządzać dostępem.

  • Użyj zasadniczego serwisu aplikacji do uwierzytelniania. Nigdy nie należy kodować osobistych tokenów dostępu (PATs) w kodzie. Poświadczenia dostępu są automatycznie wstrzykiwane jako zmienne środowiskowe:
    • DATABRICKS_CLIENT_ID
    • DATABRICKS_CLIENT_SECRET
  • Nie udostępniaj poświadczeń jednostki usługi między aplikacjami ani między użytkownikami. Każda aplikacja powinna używać własnych dedykowanych poświadczeń na potrzeby izolacji i zabezpieczeń.
  • Zastosuj dostęp z najmniejszymi uprawnieniami. Przyznaj tylko minimalne wymagane uprawnienia do jednostki usługi aplikacji. Przykład:
    • Przyznaj CAN USE w usłudze SQL Warehouse, jeśli aplikacja musi uruchamiać tylko zapytania.
    • Przyznaj CAN QUERY w punkcie końcowym obsługującym, jeśli aplikacja wysyła tylko żądania wnioskowania.
    • Przydzielaj SELECT lub MODIFY uprawnienia do tabel w katalogu Unity na podstawie potrzeb dostępu do danych aplikacji.

Dalsze kroki

Po dodaniu zasobów do aplikacji odwołaj się do nich w sekcji env konfiguracji aplikacji, używając pola valueFrom. Aby uzyskać instrukcje, zobacz Definiowanie zmiennych środowiskowych w aplikacji usługi Databricks.