Wyłączny dostęp do modelu

Important

Ta funkcja jest dostępna w publicznej wersji testowej.

Dostęp na wyłączność to wzorzec, który sprawia, że dostęp do danych wymaga świadomego włączenia, zamiast być domyślny. W przypadku standardowych uprawnień Unity Catalog uprawnienia podążają za użytkownikiem: użytkownik z czasem gromadzi uprawnienia i zachowuje je wszędzie, więc jego dostęp stanowi sumę uprawnień przyznanych mu bezpośrednio oraz uprawnień dziedziczonych ze wszystkich grup, których jest członkiem. Wzorzec wyłącznego dostępu umożliwia klientom modelowanie dostępu do poufnych danych jako wymagającego celowego działania — użytkownik musi aktywnie przyjąć rolę, aby uzyskać dostęp do danych, zamiast mieć do niego stały dostęp. Zapobiega to uzyskaniu dostępu do danych przy użyciu własnej tożsamości oraz mieszaniu danych pomiędzy przypadkami użycia, badaniami klinicznymi, projektami lub klientami.

Przykład dostępu wyłącznego: Użytkownik 1 może przyjąć rolę grupy Badania 1 lub grupy Badania 2. Działając pod własną tożsamością, użytkownik 1 nie może odpytywać danych żadnego z badań. Działając jako grupa Badania 1, użytkownik 1 może odpytywać tylko dane Badania 1; działając jako grupa Badania 2, tylko dane Badania 2.

Aby opisać ten wzorzec, używamy dwóch terminów na określenie dwóch odrębnych tożsamości, o których mowa. To etykiety objaśniające, a nie formalna terminologia usługi Azure Databricks:

  • Rola dostępu: grupa bez członków, którzy mają uprawnienia do poufnych danych. Użytkownicy przyjmują tę rolę w celu uzyskania dostępu do danych. Rola dostępu musi pozostać pusta: każdy członek roli dostępu dziedziczy jej uprawnienia bezpośrednio i może uzyskać dostęp do poufnych danych bez konieczności przyjmowania tej roli, co niweczy zasadę wyłącznego dostępu. W Azure Databricks rola dostępu jest implementowana jako grupa.
  • Grupa członków: grupa, której członkowie są użytkownikami, którzy mogą objąć rolę dostępu. Przyznanie grupie członków uprawnienia Assume do roli dostępu umożliwia wszystkim jej członkom przyjęcie tej roli. Grupa użytkowników to udogodnienie, a nie wymóg — możesz również bezpośrednio przyznać uprawnienie Assume pojedynczym użytkownikom lub jednostkom usługi. Oszczędza to konieczności zarządzania uprawnieniami Assume dla jednego podmiotu naraz.

Po skonfigurowaniu użytkownicy przyjmują rolę dostępu za pomocą dowolnej z obsługiwanych metod: przełącznika ról, dedykowanych klastrów trybu dostępu przypisanych do grupy, interfejsu wiersza polecenia, interfejsu API lub narzędzi analizy biznesowej innych firm. Zobacz Przełączanie ról.

Azure Databricks obsługuje dwa podejścia do tworzenia roli dostępu. Wybierz tę, która najlepiej pasuje do sposobu zarządzania tożsamościami w organizacji:

  • Rola dostępu lokalna dla konta: Utwórz lokalną dla konta grupę w usłudze Azure Databricks jako rolę dostępu. Najlepiej utworzyć grupę w Azure Databricks, gdy jest to prostsze niż utworzenie nowej grupy w Microsoft Entra ID (na przykład gdy zmiany w Microsoft Entra ID wymagają zgłoszenia do działu IT lub wewnętrznej weryfikacji).
  • Rola dostępu zsynchronizowana z Microsoft Entra ID: użyj pustej grupy Microsoft Entra ID jako roli dostępu zsynchronizowanej z Azure Databricks za pośrednictwem protokołu SCIM. Najlepiej, gdy zarządzasz już grupami w Microsoft Entra ID i wolisz zachować cały cykl życia grupy.

Requirements

  • Obszar roboczy z włączoną obsługą Unity Catalog.
  • Uprawnienia administratora konta lub administratora obszaru roboczego do tworzenia grup i udzielania opcji Przyjmij.

Podejście 1: Rola dostępu lokalna dla konta

W tym podejściu rola dostępu jest grupą lokalną dla konta Azure Databricks, zarządzaną w całości w ramach Azure Databricks. Grupa członków może być dowolną grupą z uprawnieniami do objęcia roli dostępu: zazwyczaj grupa synchronizowana z Microsoft Entra ID zawierająca użytkowników, którzy mogą uzyskiwać dostęp do poufnych danych.

Rola dostępu lokalna dla konta: lokalna dla konta grupa usługi Databricks pełni funkcję roli dostępu, a grupie członkowskiej przyznano uprawnienie do przejęcia tej roli.

Krok 1. Tworzenie roli dostępu i przypisywanie jej do obszaru roboczego

Utwórz grupę konta bez członków, która będzie pełnić funkcję roli dostępu. Usługa Databricks zaleca używanie spójnego prefiksu nazewnictwa (na przykład role-) w celu odróżnienia ról dostępu od zwykłych grup. Jeśli na przykład grupa członkowska dla użytkowników z dozwolonym dostępem to clinical-trial-1-ds, możesz nazwać rolę dostępu role-clinical-trial-1-ds.

Aby utworzyć rolę dostępu:

Konsola konta

  1. Jako administrator konta zaloguj się do konsoli konta.
  2. Na pasku bocznym kliknij pozycję Zarządzanie użytkownikami.
  3. Na karcie Grupy kliknij pozycję Dodaj grupę.
  4. Wprowadź nazwę roli dostępu. Nie dodawaj członków.
  5. Kliknij przycisk Potwierdź.

API grupy konta

databricks api post /api/2.0/account/scim/v2/Groups --json '{
  "displayName": "<access-role-name>"
}'

Po utworzeniu roli dostępu przypisz ją do obszarów roboczych, w których powinna być dostępna. Zobacz Przypisywanie grupy do obszaru roboczego.

Krok 2. Udzielanie dostępu do danych i zasobów obszaru roboczego

Udziel uprawnień roli dostępu do poufnych danych i zasobów obszaru roboczego przy użyciu standardowych narzędzi Azure Databricks:

  • Obiekty zabezpieczane w Unity Catalog: użyj instrukcji GRANT lub Eksploratora katalogów, aby nadać roli dostępu uprawnienia Unity Catalog.
  • Zasoby obszaru roboczego: użyj list kontroli dostępu (ACL), aby udzielić uprawnień roli dostępu do notesów, zadań, magazynów SQL i innych obiektów obszaru roboczego.

Na przykład, aby nadać roli dostępu uprawnienie do odczytu tabeli w Unity Catalog:

GRANT USE SCHEMA ON <catalog>.<schema> TO `<access-role-name>`;
GRANT SELECT ON TABLE <catalog>.<schema>.<table> TO `<access-role-name>`;

Krok 3. Nadaj uprawnienie do przejęcia roli

Udziel użytkownikom, podmiotom usługi lub grupom członków, które powinny mieć możliwość przejęcia tej roli, uprawnienia Assume. Zobacz Zarządzanie uprawnieniami w grupie.

Krok 4. Użytkownicy przyjmują rolę

Użytkownicy, którzy mają uprawnienie Assume do roli dostępu, mogą przejąć tę rolę. Zobacz Przełączanie ról dla dostępnych metod.

Podejście 2. Rola dostępu zsynchronizowana z Microsoft Entra ID

Użyj tego podejścia, aby zarządzać rolą dostępu w usłudze Microsoft Entra ID i synchronizować ją z usługą Azure Databricks za pomocą protokołu SCIM, zamiast tworzyć osobną rolę dostępu zarządzaną przez usługę Azure Databricks. Zarówno rola dostępu, jak i grupa członków pochodzą z Microsoft Entra ID.

Rola dostępu synchronizowana przez dostawcę tożsamości: pusta grupa IdP zsynchronizowana z Databricks służy jako rola dostępu, a grupie członkowskiej IdP przyznano względem niej uprawnienie Assume.

W tym podejściu:

  • Grupa dostępu to pusta grupa Microsoft Entra ID zsynchronizowana z usługą Azure Databricks, której przyznano uprawnienia dostępu do danych wrażliwych.
  • Grupa członków jest istniejącą grupą Microsoft Entra ID, której członkowie są użytkownikami, którzy mogą przyjąć rolę dostępu. Przyznajesz grupie członkowskiej uprawnienie „Assume” do roli dostępu, dzięki czemu wszyscy jej członkowie automatycznie dziedziczą uprawnienie „Assume”.

Note

Rola dostępu musi pozostać pusta w Microsoft Entra ID. Członkowie dodani do roli dostępu w Microsoft Entra ID są synchronizowani z Azure Databricks i dziedziczą uprawnienia roli bezpośrednio, co oznacza, że mogą uzyskiwać dostęp do poufnych danych bez konieczności przejmowania roli. Spowoduje to przerwanie modelu dostępu na wyłączność.

Krok 1. Konfigurowanie grup w Microsoft Entra ID

Sposób konfigurowania grup zależy od tego, czy rozpoczynasz od nowa, czy zmieniasz istniejącą grupę Microsoft Entra ID, która ma już uprawnienia w Azure Databricks.

Nowa konfiguracja

U dostawcy tożsamości:

  1. Utwórz pustą grupę, która będzie służyć jako rola dostępu. Przykład: role-clinical-trial-1-ds.
  2. Zidentyfikuj lub utwórz grupę członków, której członkowie powinni mieć możliwość przyjęcia roli dostępu. Przykład: clinical-trial-1-ds.
  3. Synchronizuj obie grupy z usługą Azure Databricks za pomocą łącznika SCIM. Zobacz Synchronizuj użytkowników i grupy z Microsoft Entra ID za pomocą SCIM.

Zmiana przeznaczenia istniejącego

Użyj tego wariantu, jeśli masz już grupę zsynchronizowaną z Microsoft Entra ID, których członkowie otrzymali uprawnienia do poufnych danych w Azure Databricks. Zmiana przeznaczenia istniejącej grupy jako roli dostępu pozwala uniknąć ponownego przyznania wszystkich uprawnień do nowej grupy.

U dostawcy tożsamości:

  1. Utwórz nową grupę Microsoft Entra ID, która będzie służyć jako grupa członków. Jeśli na przykład istniejąca grupa to clinical-trial-1-ds, utwórz .clinical-trial-1-ds-members
  2. Przenieś wszystkich członków istniejącej grupy Microsoft Entra ID do nowej grupy członków.
  3. Istniejąca grupa Microsoft Entra ID jest teraz pusta w Microsoft Entra ID i staje się rolą dostępową. Ponieważ zachowuje istniejące uprawnienia Azure Databricks, możesz pominąć krok 3 poniżej.
  4. Zsynchronizuj obie grupy z usługą Azure Databricks za pomocą łącznika SCIM. Zobacz Synchronizuj użytkowników i grupy z Microsoft Entra ID za pomocą SCIM.

Krok 2. Przypisywanie obu grup do obszaru roboczego

Przypisz zarówno rolę dostępu, jak i grupę członków do obszarów roboczych, w których powinny być dostępne. Zobacz Przypisywanie grupy do obszaru roboczego.

Krok 3. Udzielanie dostępu do zasobów danych i obszarów roboczych

Note

Jeśli w kroku 1 wykorzystano ponownie istniejącą grupę Microsoft Entra ID, rola dostępu ma już przypisane uprawnienia w usłudze Azure Databricks i możesz pominąć ten krok.

Przyznaj roli dostępu uprawnienia do poufnych danych i zasobów obszaru roboczego, wykonując te same kroki co w podejściu 1, kroku 2.

Krok 4: Nadaj grupie członkowskiej uprawnienie do przejęcia roli

Przyznaj grupie członkowskiej uprawnienie Assume dla roli dostępu. Wszyscy członkowie grupy członkowskiej automatycznie dziedziczą opcję Przyjmij. Zobacz Zarządzanie uprawnieniami w grupie.

Krok 5. Użytkownicy przyjmują rolę

Członkowie grupy członków mogą przyjąć rolę dostępową. Zobacz Przełączanie ról dla dostępnych metod.

Następne kroki

  • Zarządzaj uprawnieniami do przejmowania roli: nadaj lub cofnij uprawnienie do przejmowania roli dla roli dostępu za pomocą interfejsu użytkownika lub interfejsu API. Zobacz Zarządzanie uprawnieniami w grupie.
  • Przyjmij rolę: użyj przełącznika ról, dedykowanych klastrów trybu dostępu, interfejsu wiersza polecenia, interfejsu API lub narzędzi analizy biznesowej innych firm. Zobacz Przełączanie ról.
  • Ogranicz udostępnianie zasobów obszaru roboczego: uniemożliwia użytkownikom korzystającym z roli dostępu udostępnianie zasobów obszaru roboczego należących do tej roli. Zobacz Kontrolki udostępniania zasobów obszaru roboczego.
  • Zapoznaj się z ograniczeniami: dowiedz się, które funkcje usługi Azure Databricks nie są obsługiwane podczas przyjmowania roli, a także poznaj inne ograniczenia, takie jak braki w interfejsie API SCIM obszaru roboczego dotyczące zarządzania grupami. Zobacz Ograniczenia kontroli dostępu opartej na rolach (RBAC).