Udostępnij za pośrednictwem


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.

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 app.yaml pliku skonfiguruj usługę SQL Warehouse jako zasób za pomocą interfejsu użytkownika usługi Databricks Apps lub w programie databricks.yaml.

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.

Interfejs użytkownika usługi Databricks

Dodaj większość zasobów bezpośrednio w interfejsie użytkownika aplikacji podczas tworzenia lub edytowania aplikacji.

W sekcji Zasoby aplikacji kliknij pozycję + Dodaj zasób i wybierz typ zasobu, którego chcesz użyć. Klucz jest przypisywany do każdego zasobu, do którego odwołujesz się w app.yaml pliku.

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

Databricks.yml

Ręcznie dodaj zasoby w resources sekcji databricks.yml pliku konfiguracji. Ta metoda zapewnia większą elastyczność w przypadku zaawansowanych konfiguracji.

resources:
  sql_warehouses:
    sql_warehouse: # resource key
      name: my-warehouse

  secrets:
    secret: # resource key
      scope: my-scope
      key: my-key

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:
    • CLIENT_ID
    • 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 Autoryzacja aplikacji.