Ограничение доступа к каталогам для определенных рабочих областей
В этой статье описывается привязка каталога рабочей области и описывается, как привязать каталог каталога Unity к рабочей области Azure Databricks, чтобы предотвратить доступ к ней других рабочих областей в учетной записи Azure Databricks.
Что такое привязка каталога рабочей области?
Если вы используете рабочие области для изоляции доступа к данным пользователей, вы можете ограничить доступ каталога к определенным рабочим областям в вашей учетной записи, также называемой привязкой каталога рабочей области. По умолчанию используется общий доступ к каталогу со всеми рабочими областями, подключенными к текущему хранилищу метаданных.
Исключением по умолчанию является каталог рабочей области, который создается автоматически для всех новых рабочих областей. Этот каталог рабочих областей привязан только к рабочей области, если вы не решите предоставить ему доступ к другим рабочим областям. Важные сведения о назначении разрешений при отмене привязки этого каталога см. в разделе Отмена привязки каталога из рабочей области.
Вы можете разрешить доступ на чтение и запись к каталогу из рабочей области или указать доступ только для чтения. При указании только для чтения все операции записи блокируются из этой рабочей области в этот каталог.
Типичные варианты использования для привязки каталога к определенным рабочим областям:
- Обеспечение доступа пользователей только к рабочим данным из рабочей среды рабочей области.
- Обеспечение того, чтобы пользователи могли обрабатывать конфиденциальные данные только из выделенной рабочей области.
- Предоставление пользователям доступа только для чтения к рабочим данным из рабочей области разработчика для включения разработки и тестирования.
Примечание.
Вы также можете привязать внешние расположения и учетные данные хранилища к определенным рабочим областям, что ограничивает возможность доступа к данным во внешних расположениях привилегированным пользователям в этих рабочих областях. См. раздел (Необязательно) Назначение внешнего расположения определенным рабочим областям и (необязательно) Назначение учетных данных хранилища определенным рабочим областям.
Пример привязки к каталогу рабочей области
Пример изоляции рабочей среды и разработки. Если указать, что каталоги рабочих данных могут быть доступны только из рабочих областей, это заменяет все отдельные гранты, выданные пользователям.
На этой схеме prod_catalog
привязано к двум рабочим рабочим областям. Предположим, что пользователю предоставлен доступ к таблице с prod_catalog
именем my_table
(с помощью GRANT SELECT ON my_table TO <user>
). Если пользователь пытается получить доступ my_table
в рабочей области разработки, он получает сообщение об ошибке. Пользователь может получить доступ my_table
только из рабочих областей Prod ETL и Prod Analytics.
Привязки каталога рабочей области соблюдаются во всех областях платформы. Например, при запросе схемы сведений отображаются только каталоги, доступные в рабочей области, в которой вы выдаете запрос. Интерфейсы UIS для происхождения данных и поиска также показывают только каталоги, назначенные рабочей области (независимо от того, используются ли привязки или по умолчанию).
Привязка каталога к одной или нескольким рабочим областям
Чтобы назначить каталог определенным рабочим областям, можно использовать обозреватель каталогов или интерфейс командной строки Databricks.
Необходимые разрешения: администратор хранилища метаданных или владелец каталога.
Примечание.
Администраторы хранилища метаданных могут видеть все каталоги в хранилище метаданных с помощью обозревателя каталогов, а владельцы каталогов могут видеть все каталоги, принадлежащие им в хранилище метаданных, независимо от того, назначен ли каталог текущей рабочей области. Каталоги, которые не назначены рабочей области, отображаются серым цветом, и дочерние объекты не отображаются или запрашиваются.
Обозреватель каталогов
Войдите в рабочую область, связанную с хранилищем метаданных.
Щелкните каталог.
В области каталога слева щелкните имя каталога.
Основная область обозревателя каталогов по умолчанию используется в списке каталогов . Вы также можете выбрать каталог там.
На вкладке "Рабочие области" снимите флажок "Все рабочие области" с флажком "Доступ ".
Если каталог уже привязан к одной или нескольким рабочим областям, этот флажок уже снят.
Нажмите кнопку " Назначить рабочим областям" и введите или найдите рабочие области, которые вы хотите назначить.
(Необязательно) Ограничение доступа к рабочей области только для чтения.
В меню "Управление уровнем доступа" выберите "Изменить доступ только для чтения".
Вы можете изменить этот выбор в любое время, изменив каталог и выбрав "Изменить доступ к чтению и записи".
Чтобы отменить доступ, перейдите на вкладку "Рабочие области" , выберите рабочую область и нажмите кнопку "Отозвать".
CLI
Существует две группы команд CLI Databricks и два шага, необходимых для назначения каталога рабочей области.
В следующих примерах замените <profile-name>
имя профиля конфигурации проверки подлинности Azure Databricks. Он должен включать значение личного маркера доступа в дополнение к имени экземпляра рабочей области и идентификатору рабочей области, в которой вы создали личный маркер доступа. См . проверку подлинности маркера личного доступа Azure Databricks.
catalogs
Используйте команду группыupdate
команд, чтобы задать для каталогаisolation mode
ISOLATED
значение :databricks catalogs update <my-catalog> \ --isolation-mode ISOLATED \ --profile <profile-name>
Значение по умолчанию
isolation-mode
—OPEN
для всех рабочих областей, подключенных к хранилищу метаданных.workspace-bindings
Используйте команду группыupdate-bindings
команд, чтобы назначить рабочие области каталогу: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>
"add"
"remove"
Используйте свойства для добавления или удаления привязок рабочей области. Может<binding-type>
быть либо (по умолчанию), либо“BINDING_TYPE_READ_WRITE”
“BINDING_TYPE_READ_ONLY”
.
Чтобы вывести список всех назначений рабочих областей для каталога, используйте workspace-bindings
команду группы get-bindings
команд:
databricks workspace-bindings get-bindings catalog <my-catalog> \
--profile <profile-name>
Отмена привязки каталога из рабочей области
Инструкции по отмене доступа к рабочей области к каталогу с помощью обозревателя каталогов или workspace-bindings
группы команд CLI включаются в привязку каталога к одной или нескольким рабочим областям.
Внимание
Если ваша рабочая область была включена для каталога Unity автоматически, а у вас есть каталог рабочей области, администраторы рабочих областей имеют все разрешения только в этом каталоге. Если вы отменяете привязку этого каталога или привязываете его к другим каталогам, необходимо предоставить все необходимые разрешения вручную членам группы администраторов рабочей области в качестве отдельных пользователей или с помощью групп уровня учетных записей, так как группа администраторов рабочей области является локальной группой рабочей области. Дополнительные сведения о группах учетных записей и локальных группах рабочей области см. в разделе "Разница между группами учетных записей и локальными группами рабочей области".