Ogranicz dostęp do katalogu w określonych obszarach roboczych
W tym artykule przedstawiono proces powiązania katalogu Unity Catalog z obszarem roboczym usługi Azure Databricks i opisano, jak powiązać katalog Unity Catalog z obszarem roboczym, aby inne obszary robocze na koncie Azure Databricks nie miały do niego dostępu.
Co to jest powiązanie wykazu obszarów roboczych?
Jeśli używasz obszarów roboczych do izolowania dostępu do danych użytkownika, możesz ograniczyć dostęp do katalogu do konkretnych obszarów roboczych w twoim koncie, co nazywa się powiązaniem katalogu z obszarami roboczymi. Domyślnie katalog jest udostępniany wszystkim obszarom roboczym połączonym z bieżącym magazynem metadanych.
Wyjątkiem od tej wartości domyślnej jest wykaz obszarów roboczych tworzony automatycznie dla wszystkich nowych obszarów roboczych. Ten wykaz obszarów roboczych jest powiązany tylko z obszarem roboczym, chyba że zdecydujesz się na nadanie innym obszarom roboczym dostępu do niego. Aby uzyskać ważne informacje na temat przypisywania uprawnień w przypadku odłączenia tego katalogu, zobacz Odłącz katalog od obszaru roboczego.
Możesz zezwolić na dostęp do odczytu i zapisu do katalogu z obszaru roboczego lub określić dostęp tylko do odczytu. Jeśli określisz tryb tylko do odczytu, wszystkie operacje zapisu zostaną zablokowane z tego obszaru roboczego do tego katalogu.
Typowe przypadki użycia powiązania wykazu z określonymi obszarami roboczymi obejmują:
- Zapewnienie, że użytkownicy mogą uzyskiwać dostęp tylko do danych produkcyjnych ze środowiska produkcyjnego obszaru roboczego.
- Zapewnienie, że użytkownicy mogą przetwarzać tylko poufne dane z dedykowanego obszaru roboczego.
- Zapewnienie użytkownikom dostępu tylko do odczytu do danych produkcyjnych z obszaru roboczego dewelopera w celu umożliwienia programowania i testowania.
Uwaga
Można również powiązać lokalizacje zewnętrzne i poświadczenia magazynowe z określonymi obszarami roboczymi, ograniczając dostęp do danych w lokalizacjach zewnętrznych dla uprzywilejowanych użytkowników w tych obszarach roboczych. Zobacz (Opcjonalnie) Przypisywanie lokalizacji zewnętrznej do określonych obszarów roboczych i (opcjonalnie) Przypisywanie poświadczeń magazynu do określonych obszarów roboczych.
Przykład powiązania katalogu z obszarem roboczym
Weźmy przykład izolacji środowiska produkcyjnego i programistycznego. Jeśli określisz, że dostęp do katalogów danych produkcyjnych będzie można uzyskać tylko z obszarów roboczych produkcyjnych, zastępuje to wszelkie indywidualne granty wydane dla użytkowników.
diagram powiązania obszaru roboczego katalogu
Na tym diagramie prod_catalog
jest powiązany z dwoma obszarami roboczymi produkcyjnymi. Załóżmy, że użytkownik otrzymał dostęp do tabeli w prod_catalog
o nazwie my_table
(przy użyciu GRANT SELECT ON my_table TO <user>
). Jeśli użytkownik spróbuje uzyskać dostęp my_table
w obszarze roboczym Deweloper, zostanie wyświetlony komunikat o błędzie. Użytkownik może uzyskiwać dostęp my_table
tylko z obszarów roboczych Prod ETL i Prod Analytics.
Powiązania katalogu obszarów roboczych są przestrzegane we wszystkich obszarach platformy. Na przykład, jeśli wykonujesz zapytanie dotyczące schematu informacji, zobaczysz tylko katalogi dostępne w obszarze roboczym, w którym wystawiasz zapytanie. Pochodzenie danych i interfejsy wyszukiwania użytkownika również pokazują tylko katalogi przypisane do obszaru roboczego (niezależnie od tego, czy są używane powiązania, czy domyślnie).
Połącz katalog z co najmniej jednym obszarem roboczym
Aby przypisać wykaz do określonych obszarów roboczych, możesz użyć Eksploratora wykazu lub interfejsu wiersza polecenia usługi Databricks.
Uprawnienia wymagane: administrator metastore, właściciel katalogu lub MANAGE
i USE CATALOG
w katalogu.
Uwaga
Administratorzy magazynu metadanych mogą wyświetlać wszystkie wykazy w magazynie metadanych przy użyciu Eksploratora wykazu— a właściciele wykazu mogą zobaczyć wszystkie wykazy, które należą do magazynu metadanych— niezależnie od tego, czy wykaz jest przypisany do bieżącego obszaru roboczego. Wykazy, które nie są przypisane do obszaru roboczego, są wyszarywane, a żadne obiekty podrzędne nie są widoczne ani możliwe do wykonywania zapytań.
Eksplorator wykazu
Zaloguj się do obszaru roboczego połączonego z magazynem metadanych.
Kliknij ikonę katalogu .
W okienku katalogu , po lewej stronie, kliknij nazwę katalogu.
Główne okienko Eksploratora katalogu domyślnie otwiera się na liście katalogów . Możesz również wybrać tam katalog.
Na karcie Obszary robocze wyczyść pole wyboru Wszystkie obszary robocze mają dostęp.
Jeśli katalog jest już powiązany z co najmniej jednym obszarem roboczym, to zaznaczenie pola wyboru zostało usunięte.
Kliknij pozycję Przypisz do obszarów roboczych i wprowadź lub znajdź obszary robocze, które chcesz przypisać.
(Opcjonalnie) Ogranicz dostęp do obszaru roboczego tylko do odczytu.
W menu zarządzanie poziomem dostępu wybierz pozycję Zmień dostęp na tylko do odczytu.
W dowolnym momencie możesz cofnąć ten wybór, edytując katalog i wybierając opcję Zmień dostęp z odczytu na & zapis.
Aby odwołać dostęp, przejdź do karty Obszary robocze, wybierz obszar roboczy, a następnie kliknij pozycję Odwołaj.
CLI
Istnieją dwa interfejsu wiersza polecenia usługi Databricks grupy poleceń i dwa kroki wymagane do przypisania wykazu do obszaru roboczego.
W poniższych przykładach zastąp <profile-name>
ciąg nazwą profilu konfiguracji uwierzytelniania usługi Azure Databricks. Powinna ona zawierać wartość osobistego tokenu dostępu, a także nazwę instancji i identyfikator obszaru roboczego, gdzie został wygenerowany ten token. Zobacz Uwierzytelnianie osobistego tokenu dostępu w usłudze Azure Databricks.
Aby ustawić
isolation mode
katalogu naISOLATED
, użyj poleceniaupdate
z grupy poleceńcatalogs
:databricks catalogs update <my-catalog> \ --isolation-mode ISOLATED \ --profile <profile-name>
Wartość domyślna
isolation-mode
toOPEN
wszystkie obszary robocze dołączone do magazynu metadanych.Użyj polecenia
workspace-bindings
grupy poleceńupdate-bindings
, aby przypisać obszary robocze do katalogu:databricks workspace-bindings update-bindings catalog <my-catalog> \ --json '{ "add": [{"workspace_id": <workspace-id>, "binding_type": <binding-type>}...], "remove": [{"workspace_id": <workspace-id>, "binding_type": "<binding-type>}...] }' --profile <profile-name>
Użyj właściwości
"add"
i"remove"
, aby dodać lub usunąć powiązania obszaru roboczego. Może to być<binding-type>
(wartość domyślna“BINDING_TYPE_READ_WRITE”
) lub“BINDING_TYPE_READ_ONLY”
.
Aby wyświetlić listę wszystkich przypisań obszarów roboczych dla katalogu, użyj polecenia get-bindings
z grupy poleceń workspace-bindings
.
databricks workspace-bindings get-bindings catalog <my-catalog> \
--profile <profile-name>
rozłącz katalog z areą roboczą
Instrukcje dotyczące cofania dostępu do katalogu z obszaru roboczego przy użyciu Eksploratora katalogu lub grupy poleceń CLI workspace-bindings
znajdują się w Powiązanie katalogu z co najmniej jednym obszarem roboczym.
Ważne
Jeśli obszar roboczy został włączony automatycznie dla wykazu aparatu Unity i masz katalog obszarów roboczych , administratorzy obszaru roboczego są właścicielami tego wykazu i mają wszystkie uprawnienia do tego wykazu tylko w obszarze roboczym. W przypadku odłączenia tego katalogu lub powiązania go z innymi katalogami należy ręcznie przyznać wszelkie wymagane uprawnienia członkom grupy administratorów obszaru roboczego jako pojedynczym użytkownikom lub używając grup na poziomie konta, ponieważ grupa administratorów obszaru roboczego jest grupą lokalną obszaru roboczego. Aby uzyskać więcej informacji na temat grup kont w porównaniu do grup lokalnych w obszarze roboczym, zobacz Typy grup w usłudze Azure Databricks.