Udostępnij za pośrednictwem


Zarzadzanie jednostkami usługi

W tym artykule wyjaśniono, jak tworzyć jednostki usługi i zarządzać nimi dla konta i obszarów roboczych usługi Azure Databricks.

Aby zapoznać się z omówieniem modelu tożsamości usługi Azure Databricks, zobacz Tożsamości usługi Azure Databricks.

Aby zarządzać dostępem dla jednostek usługi, zobacz Uwierzytelnianie i kontrola dostępu.

Co to jest jednostka usługi?

Jednostka usługi to tożsamość tworzona w usłudze Azure Databricks do użycia ze zautomatyzowanymi narzędziami, zadaniami i aplikacjami. Jednostki usługi zapewniają zautomatyzowanym narzędziom i skryptom dostęp tylko za pośrednictwem interfejsu API do zasobów usługi Azure Databricks, zapewniając większe zabezpieczenia niż korzystanie z użytkowników lub grup.

Możesz udzielić i ograniczyć dostęp jednostki usługi do zasobów w taki sam sposób, jak użytkownik usługi Azure Databricks. Można na przykład wykonać następujące czynności:

  • Nadaj administratorowi konta jednostki usługi i administratorowi obszaru roboczego.
  • Przyznaj jednostce usługi dostęp do danych na poziomie konta przy użyciu wykazu aparatu Unity lub na poziomie obszaru roboczego.
  • Dodaj jednostkę usługi do grupy zarówno na poziomie konta, jak i obszaru roboczego, w tym do grupy obszarów roboczych admins .

Możesz również przyznać użytkownikom usługi Azure Databricks, jednostkom usługi i grupom uprawnienia do używania jednostki usługi. Dzięki temu użytkownicy mogą uruchamiać zadania jako jednostkę usługi, a nie jako tożsamość. Uniemożliwia to niepowodzenie zadań, jeśli użytkownik opuści organizację lub grupę zostanie zmodyfikowana.

W przeciwieństwie do użytkownika usługi Azure Databricks, jednostka usługi jest tożsamością tylko interfejsu API; nie można jej używać do uzyskiwania dostępu do interfejsu użytkownika usługi Azure Databricks.

Usługa Databricks zaleca włączenie obszarów roboczych na potrzeby federacji tożsamości. Federacja tożsamości umożliwia konfigurowanie jednostek usługi w konsoli konta, a następnie przypisywanie im dostępu do określonych obszarów roboczych. Upraszcza to administrowanie usługą Azure Databricks i zarządzanie danymi.

Ważne

Usługa Databricks zaczęła włączać nowe obszary robocze dla federacji tożsamości i katalogu aparatu Unity automatycznie 9 listopada 2023 r., a wdrożenie przebiega stopniowo między kontami. Jeśli obszar roboczy jest domyślnie włączony dla federacji tożsamości, nie można go wyłączyć. Aby uzyskać więcej informacji, zobacz Automatyczne włączanie wykazu aparatu Unity.

Jednostki usługi Databricks i Microsoft Entra ID

Jednostki usługi mogą być jednostkami usługi zarządzanej w usłudze Azure Databricks lub jednostkami usługi zarządzanej identyfikatora entra firmy Microsoft.

Uwierzytelnianie jednostek usługi zarządzanej Azure Databricks w usłudze Azure Databricks może odbywać się przy użyciu uwierzytelniania OAuth usługi Databricks i osobistych tokenów dostępu. Uwierzytelnianie jednostkek usługi zarządzanej Microsoft Entra ID w usłudze Azure Databricks może odbywać się przy użyciu uwierzytelniania OAuth usługi Databricks i tokenów Microsoft Entra ID. Aby uzyskać więcej informacji na temat uwierzytelniania jednostek usługi, zobacz Zarządzanie tokenami dla jednostki usługi.

Jednostki usługi zarządzanej usługi Azure Databricks są zarządzane bezpośrednio w usłudze Azure Databricks. Zarządzane jednostki usługi Microsoft Entra ID są zarządzane w usłudze Microsoft Entra ID, co wymaga dodatkowych uprawnień. Usługa Databricks zaleca używanie jednostek usługi zarządzanej usługi Azure Databricks na potrzeby automatyzacji usługi Azure Databricks i używania jednostek usługi zarządzanej microsoft Entra ID w przypadkach, w których należy uwierzytelnić się w usłudze Azure Databricks i innych zasobach platformy Azure w tym samym czasie.

Aby utworzyć jednostkę usługi zarządzanej usługi Azure Databricks, pomiń tę sekcję i przejdź do artykułu Kto może zarządzać jednostkami usługi i korzystać z nich?.

Aby używać jednostek usługi zarządzanej microsoft Entra ID w usłudze Azure Databricks, administrator musi utworzyć aplikację Microsoft Entra ID na platformie Azure. Aby utworzyć jednostkę usługi zarządzanej identyfikatora entra firmy Microsoft, zobacz uwierzytelnianie jednostki usługi MS Entra.

Kto może zarządzać jednostkami usługi i korzystać z nich?

Aby zarządzać jednostkami usługi w usłudze Azure Databricks, musisz mieć jedną z następujących funkcji: rolę administratora konta, rolę administratora obszaru roboczego lub rolę menedżera lub użytkownika w jednostce usługi.

  • Administratorzy kont mogą dodawać jednostki usługi do konta i przypisywać im role administratora. Mogą również przypisywać jednostki usługi do obszarów roboczych, o ile te obszary robocze używają federacji tożsamości.
  • Administratorzy obszaru roboczego mogą dodawać jednostki usługi do obszaru roboczego usługi Azure Databricks, przypisywać im rolę administratora obszaru roboczego i zarządzać dostępem do obiektów i funkcji w obszarze roboczym, takich jak możliwość tworzenia klastrów lub uzyskiwania dostępu do określonych środowisk opartych na osobach.
  • Menedżerowie jednostki usługi mogą zarządzać rolami w jednostce usługi. Autor jednostki usługi staje się menedżerem jednostki usługi. Administratorzy kont to menedżerowie jednostki usługi na wszystkich jednostkach usługi na koncie.

Uwaga

Jeśli jednostka usługi została utworzona przed 13 czerwca 2023 r., twórca jednostki usługi nie ma domyślnie roli menedżera jednostki usługi. Poproś administratora konta o przyznanie Ci roli menedżera jednostki usługi.

Użytkownicy z rolą Menedżera jednostki usługi nie dziedziczą roli użytkownika jednostki usługi. Jeśli chcesz użyć jednostki usługi do wykonywania zadań, musisz jawnie przypisać sobie rolę użytkownika jednostki usługi, nawet po utworzeniu jednostki usługi.

Aby uzyskać informacje na temat udzielania ról menedżera jednostki usługi i ról użytkowników, zobacz Role do zarządzania jednostkami usługi.

Zarządzanie jednostkami usługi na koncie

Administratorzy konta mogą dodawać jednostki usługi do konta usługi Azure Databricks przy użyciu konsoli konta.

Dodawanie jednostek usługi do konta przy użyciu konsoli konta

Jednostki usługi można utworzyć w usłudze Azure Databricks lub połączyć z istniejącą jednostką usługi Microsoft Entra ID. Zobacz Databricks i Microsoft Entra ID jednostki usługi.

  1. Jako administrator konta zaloguj się do konsoli konta.
  2. Na pasku bocznym kliknij pozycję Zarządzanie użytkownikami.
  3. Na karcie Jednostki usługi kliknij pozycję Dodaj jednostkę usługi.
  4. W obszarze Zarządzanie wybierz pozycję Zarządzane przez usługę Databricks lub Zarządzany identyfikator entra firmy Microsoft.
  5. Jeśli wybrano pozycję Zarządzany identyfikator entra firmy Microsoft, w obszarze Identyfikator aplikacji Entra firmy Microsoft wklej identyfikator aplikacji (klienta) dla jednostki usługi.
  6. Wprowadź nazwę jednostki usługi.
  7. Kliknij przycisk Dodaj.

Przypisywanie ról administratora konta do jednostki usługi

  1. Jako administrator konta zaloguj się do konsoli konta.
  2. Na pasku bocznym kliknij pozycję Zarządzanie użytkownikami.
  3. Na karcie Jednostki usługi znajdź i kliknij nazwę użytkownika.
  4. Na karcie Role włącz pozycję Administrator konta lub Administrator witryny Marketplace.

Przypisywanie jednostki usługi do obszaru roboczego przy użyciu konsoli konta

Aby dodać użytkowników do obszaru roboczego przy użyciu konsoli konta, należy włączyć obszar roboczy na potrzeby federacji tożsamości. Administratorzy obszaru roboczego mogą również przypisywać jednostki usługi do obszarów roboczych przy użyciu strony ustawień administratora obszaru roboczego. Aby uzyskać szczegółowe informacje, zobacz Dodawanie jednostki usługi do obszaru roboczego przy użyciu ustawień administratora obszaru roboczego.

  1. Jako administrator konta zaloguj się do konsoli konta.
  2. Na pasku bocznym kliknij pozycję Obszary robocze.
  3. Kliknij nazwę obszaru roboczego.
  4. Na karcie Permissions (Uprawnienia) kliknij pozycję Add permissions (Dodaj uprawnienia).
  5. Wyszukaj i wybierz jednostkę usługi, przypisz poziom uprawnień (użytkownik lub administrator obszaru roboczego), a następnie kliknij przycisk Zapisz.

Usuwanie jednostki usługi z obszaru roboczego przy użyciu konsoli konta

Aby usunąć jednostki usługi z obszaru roboczego przy użyciu konsoli konta, obszar roboczy musi być włączony dla federacji tożsamości. Po usunięciu jednostki usługi z obszaru roboczego jednostka usługi nie może już uzyskać dostępu do obszaru roboczego, jednak uprawnienia są utrzymywane w jednostce usługi. Jeśli jednostka usługi zostanie później dodana z powrotem do obszaru roboczego, odzyska swoje poprzednie uprawnienia.

  1. Jako administrator konta zaloguj się do konsoli konta
  2. Na pasku bocznym kliknij pozycję Obszary robocze.
  3. Kliknij nazwę obszaru roboczego.
  4. Na karcie Uprawnienia znajdź jednostkę usługi.
  5. Menu Kebab Kliknij menu kebab po prawej stronie wiersza jednostki usługi i wybierz pozycję Usuń.
  6. W oknie dialogowym potwierdzenia kliknij przycisk Usuń.

Dezaktywowanie jednostki usługi na koncie usługi Azure Databricks

Administratorzy kont mogą dezaktywować jednostki usługi na koncie usługi Azure Databricks. Zdezaktywowana jednostka usługi nie może uwierzytelniać się na koncie lub w obszarach roboczych usługi Azure Databricks. Jednak wszystkie uprawnienia jednostki usługi i obiekty obszaru roboczego pozostają niezmienione. W przypadku dezaktywowania jednostki usługi jest spełniony następujący warunek:

  • Jednostka usługi nie może uwierzytelnić się na koncie ani w żadnym z ich obszarów roboczych z dowolnej metody.
  • Aplikacje lub skrypty korzystające z tokenów generowanych przez jednostkę usługi nie są już w stanie uzyskać dostępu do interfejsu API usługi Databricks. Tokeny pozostają, ale nie można ich używać do uwierzytelniania, gdy jednostka usługi jest dezaktywowana.
  • Klastry należące do jednostki usługi pozostają uruchomione.
  • Zaplanowane zadania utworzone przez jednostkę usługi kończą się niepowodzeniem, chyba że zostaną przypisane do nowego właściciela.

Po ponownym uaktywnieniu jednostki usługi może zalogować się do usługi Azure Databricks z tymi samymi uprawnieniami. Usługa Databricks zaleca dezaktywowanie jednostek usługi z konta zamiast ich usuwania, ponieważ usunięcie jednostki usługi jest działaniem destrukcyjnym. Stan dezaktywowanej jednostki usługi ma etykietę Nieaktywne w konsoli konta. Możesz również dezaktywować jednostkę usługi z określonego obszaru roboczego. Zobacz Dezaktywowanie jednostki usługi w obszarze roboczym usługi Azure Databricks.

Nie można dezaktywować jednostki usługi przy użyciu konsoli konta. Zamiast tego użyj interfejsu API jednostki usługi konta.

Na przykład:

curl --netrc -X PATCH \
https://${DATABRICKS_HOST}/api/2.1/accounts/{account_id}/scim/v2/ServicePrincipals/{id} \
--header 'Content-type: application/scim+json' \
--data @update-sp.json \
| jq .

update-sp.json:

{
  "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ],
  "Operations": [
    {
      "op": "replace",
      "path": "active",
      "value": [
        {
          "value": "false"
        }
      ]
    }
  ]
}

Usuwanie jednostek usługi z konta usługi Azure Databricks

Administratorzy kont mogą usuwać jednostki usługi z konta usługi Azure Databricks. Administratorzy obszaru roboczego nie mogą. Po usunięciu jednostki usługi z konta ta jednostka jest również usuwana z ich obszarów roboczych.

Ważne

Po usunięciu jednostki usługi z konta ta jednostka usługi zostanie również usunięta z ich obszarów roboczych, niezależnie od tego, czy federacja tożsamości została włączona. Zalecamy powstrzymanie się od usuwania jednostek usługi na poziomie konta, chyba że chcesz, aby utraciły dostęp do wszystkich obszarów roboczych na koncie. Należy pamiętać o następujących konsekwencjach usuwania jednostek usługi:

  • Aplikacje lub skrypty korzystające z tokenów generowanych przez jednostkę usługi nie mogą już uzyskiwać dostępu do interfejsów API usługi Databricks
  • Zadania należące do jednostki usługi kończą się niepowodzeniem
  • Klastry należące do zatrzymania jednostki usługi
  • Zapytania lub pulpity nawigacyjne utworzone przez jednostkę usługi i udostępnione przy użyciu poświadczeń Uruchom jako właściciel muszą być przypisane do nowego właściciela, aby zapobiec awarii udostępniania

Gdy jednostka usługi Microsoft Entra ID zostanie usunięta z konta, jednostka usługi nie może już uzyskać dostępu do konta lub jego obszarów roboczych, jednak uprawnienia są przechowywane w jednostce usługi. Jeśli jednostka usługi zostanie później dodana z powrotem do konta, odzyska swoje poprzednie uprawnienia.

Aby usunąć jednostkę usługi przy użyciu konsoli konta, wykonaj następujące czynności:

  1. Jako administrator konta zaloguj się do konsoli konta.
  2. Na pasku bocznym kliknij pozycję Zarządzanie użytkownikami.
  3. Na karcie Jednostki usługi znajdź i kliknij nazwę użytkownika.
  4. Na karcie Informacje główne kliknij Menu Kebab menu kebab w prawym górnym rogu i wybierz pozycję Usuń.
  5. W oknie dialogowym potwierdzenia kliknij pozycję Potwierdź usunięcie.

Zarządzanie jednostkami usługi w obszarze roboczym

Administratorzy obszaru roboczego mogą zarządzać jednostkami usługi w swoich obszarach roboczych przy użyciu strony ustawień administratora obszaru roboczego.

Dodawanie jednostki usługi do obszaru roboczego przy użyciu ustawień administratora obszaru roboczego

Jednostki usługi można utworzyć w usłudze Azure Databricks lub połączyć z istniejącą jednostką usługi Microsoft Entra ID. Zobacz Databricks i Microsoft Entra ID jednostki usługi.

  1. Jako administrator obszaru roboczego zaloguj się do obszaru roboczego usługi Azure Databricks.

  2. Kliknij swoją nazwę użytkownika na górnym pasku obszaru roboczego usługi Azure Databricks i wybierz pozycję Ustawienia.

  3. Kliknij kartę Tożsamość i dostęp .

  4. Obok pozycji Jednostki usługi kliknij pozycję Zarządzaj.

  5. Kliknij pozycję Dodaj jednostkę usługi.

  6. Wybierz istniejącą jednostkę usługi, która ma zostać przypisana do obszaru roboczego, lub kliknij pozycję Dodaj nową , aby utworzyć nową.

    Aby dodać nową jednostkę usługi, wybierz pozycję Zarządzane przez usługę Databricks lub Zarządzane identyfikatory Entra firmy Microsoft. Jeśli wybierzesz pozycję Zarządzany identyfikator entra firmy Microsoft, wklej identyfikator aplikacji (klienta) jednostki usługi i wprowadź nazwę wyświetlaną.

  7. Kliknij przycisk Dodaj.

Uwaga

Jeśli obszar roboczy nie jest włączony dla federacji tożsamości, nie można przypisać istniejących jednostek usługi konta do obszaru roboczego.

Przypisywanie roli administratora obszaru roboczego do jednostki usługi przy użyciu strony ustawień administratora obszaru roboczego

  1. Jako administrator obszaru roboczego zaloguj się do obszaru roboczego usługi Azure Databricks.
  2. Kliknij swoją nazwę użytkownika na górnym pasku obszaru roboczego usługi Azure Databricks i wybierz pozycję Ustawienia.
  3. Kliknij kartę Tożsamość i dostęp .
  4. Obok pozycji Grupy kliknij pozycję Zarządzaj.
  5. Wybierz grupę systemowa admins .
  6. Kliknij pozycję Dodaj członków.
  7. Wybierz jednostkę usługi i kliknij przycisk Potwierdź.

Aby usunąć rolę administratora obszaru roboczego z jednostki usługi, usuń jednostkę usługi z grupy administracyjnej.

Dezaktywowanie jednostki usługi w obszarze roboczym usługi Azure Databricks

Administratorzy obszaru roboczego mogą dezaktywować jednostki usługi w obszarze roboczym usługi Azure Databricks. Zdezaktywowana jednostka usługi nie może uzyskać dostępu do obszaru roboczego z interfejsów API usługi Azure Databricks, jednak wszystkie uprawnienia jednostki usługi i obiekty obszaru roboczego pozostają niezmienione. Gdy jednostka usługi jest dezaktywowana:

  • Jednostka usługi nie może uwierzytelniać się w obszarach roboczych z żadnej metody.
  • Stan jednostki usługi jest wyświetlany jako Nieaktywny na stronie ustawienia administratora obszaru roboczego.
  • Aplikacje lub skrypty korzystające z tokenów generowanych przez jednostkę usługi nie mogą już uzyskiwać dostępu do interfejsu API usługi Databricks. Tokeny pozostają, ale nie można ich używać do uwierzytelniania, gdy jednostka usługi jest dezaktywowana.
  • Klastry należące do jednostki usługi pozostają uruchomione.
  • Zaplanowane zadania utworzone przez jednostkę usługi muszą być przypisane do nowego właściciela, aby zapobiec ich awarii.

Po ponownym uaktywnieniu jednostki usługi może uwierzytelniać się w obszarze roboczym przy użyciu tych samych uprawnień. Usługa Databricks zaleca dezaktywowanie jednostek usługi zamiast ich usuwania, ponieważ usunięcie jednostki usługi jest destrukcyjną akcją.

  1. Jako administrator obszaru roboczego zaloguj się do obszaru roboczego usługi Azure Databricks.
  2. Kliknij swoją nazwę użytkownika na górnym pasku obszaru roboczego usługi Azure Databricks i wybierz pozycję Ustawienia.
  3. Kliknij kartę Tożsamość i dostęp .
  4. Obok pozycji Jednostki usługi kliknij pozycję Zarządzaj.
  5. Wybierz jednostkę usługi, którą chcesz dezaktywować.
  6. W obszarze Stan usuń zaznaczenie pola Aktywne.

Aby ustawić nazwę główną usługi na aktywną, wykonaj te same kroki, ale zaznacz pole wyboru.

Usuwanie jednostki usługi z obszaru roboczego przy użyciu strony ustawień administratora obszaru roboczego

Usunięcie jednostki usługi z obszaru roboczego nie powoduje usunięcia jednostki usługi z konta. Aby usunąć jednostkę usługi z konta, zobacz Usuwanie jednostek usługi z konta usługi Azure Databricks.

Po usunięciu jednostki usługi z obszaru roboczego jednostka usługi nie może już uzyskać dostępu do obszaru roboczego, jednak uprawnienia są utrzymywane w jednostce usługi. Jeśli jednostka usługi zostanie później dodana z powrotem do obszaru roboczego, odzyska poprzednie uprawnienia.

  1. Jako administrator obszaru roboczego zaloguj się do obszaru roboczego usługi Azure Databricks.
  2. Kliknij swoją nazwę użytkownika na górnym pasku obszaru roboczego usługi Azure Databricks i wybierz pozycję Ustawienia.
  3. Kliknij kartę Tożsamość i dostęp .
  4. Obok pozycji Jednostki usługi kliknij pozycję Zarządzaj.
  5. Wybierz jednostkę usługi.
  6. W prawym górnym rogu kliknij pozycję Usuń.
  7. Kliknij przycisk Usuń , aby potwierdzić.

Zarządzanie jednostkami usługi przy użyciu interfejsu API

Administratorzy kont i administratorzy obszaru roboczego mogą zarządzać jednostkami usługi w ramach konta i obszarów roboczych usługi Azure Databricks przy użyciu interfejsów API usługi Databricks. Aby zarządzać rolami w jednostce usługi przy użyciu interfejsu API, zobacz Zarządzanie rolami jednostki usługi przy użyciu interfejsu wiersza polecenia usługi Databricks.

Zarządzanie jednostkami usługi na koncie przy użyciu interfejsu API

Administratorzy mogą dodawać jednostki usługi i zarządzać nimi na koncie usługi Azure Databricks przy użyciu interfejsu API jednostki usługi konta. Administratorzy konta i administratorzy obszaru roboczego wywołują interfejs API przy użyciu innego adresu URL punktu końcowego:

  • Administratorzy konta używają polecenia {account-domain}/api/2.1/accounts/{account_id}/scim/v2/.
  • Administratorzy obszaru roboczego używają polecenia {workspace-domain}/api/2.0/account/scim/v2/.

Aby uzyskać szczegółowe informacje, zobacz interfejs API jednostki usługi konta.

Zarządzanie jednostkami usługi w obszarze roboczym przy użyciu interfejsu API

Administratorzy kont i obszarów roboczych mogą używać interfejsu API przypisywania obszaru roboczego do przypisywania jednostek usługi do obszarów roboczych z włączoną federacją tożsamości. Interfejs API przypisania obszaru roboczego jest obsługiwany za pośrednictwem konta i obszarów roboczych usługi Azure Databricks.

  • Administratorzy konta używają polecenia {account-domain}/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/permissionassignments.
  • Administratorzy obszaru roboczego używają polecenia {workspace-domain}/api/2.0/preview/permissionassignments/principals/{principal_id}.

Zobacz Interfejs API przypisania obszaru roboczego.

Jeśli obszar roboczy nie jest włączony dla federacji tożsamości, administrator obszaru roboczego może użyć interfejsów API na poziomie obszaru roboczego, aby przypisać jednostki usługi do swoich obszarów roboczych. Zobacz Interfejs API jednostek usługi obszaru roboczego.

Zarządzanie tokenami dla jednostki usługi

Jednostki usługi mogą uwierzytelniać się w interfejsach API w usłudze Azure Databricks przy użyciu tokenów OAuth usługi Azure Databricks lub osobistych tokenów dostępu usługi Azure Databricks w następujący sposób:

  • Tokeny OAuth usługi Azure Databricks mogą służyć do uwierzytelniania w interfejsach API na poziomie konta i na poziomie obszaru roboczego usługi Azure Databricks.
    • Tokeny OAuth usługi Azure Databricks utworzone na poziomie konta usługi Azure Databricks mogą służyć do uwierzytelniania w interfejsach API na poziomie konta i na poziomie obszaru roboczego usługi Azure Databricks.
    • Tokeny OAuth usługi Azure Databricks utworzone na poziomie obszaru roboczego usługi Azure Databricks mogą służyć do uwierzytelniania tylko w interfejsach API na poziomie obszaru roboczego usługi Azure Databricks.
  • Osobiste tokeny dostępu usługi Azure Databricks mogą służyć do uwierzytelniania tylko w interfejsach API na poziomie obszaru roboczego usługi Azure Databricks.

Zarządzanie uwierzytelnianiem OAuth usługi Databricks dla jednostki usługi

Aby uwierzytelnić się na poziomie konta i na poziomie obszaru roboczego interfejsów API REST usługi Databricks, administratorzy kont mogą używać tokenów OAuth usługi Azure Databricks dla jednostek usługi. Token OAuth można zażądać przy użyciu identyfikatora klienta i klucza tajnego klienta dla jednostki usługi. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie dostępu do usługi Azure Databricks przy użyciu jednostki usługi przy użyciu protokołu OAuth (OAuth M2M).

Zobacz też