Поделиться через


Ограничение доступа к каталогам для определенных рабочих областей

В этой статье описывается привязка каталога рабочей области и описывается, как привязать каталог каталога 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.

Необходимые разрешения: администратор хранилища метаданных или владелец каталога.

Примечание.

Администраторы хранилища метаданных могут видеть все каталоги в хранилище метаданных с помощью обозревателя каталогов, а владельцы каталогов могут видеть все каталоги, принадлежащие им в хранилище метаданных, независимо от того, назначен ли каталог текущей рабочей области. Каталоги, которые не назначены рабочей области, отображаются серым цветом, и дочерние объекты не отображаются или запрашиваются.

Обозреватель каталогов

  1. Войдите в рабочую область, связанную с хранилищем метаданных.

  2. Щелкните Значок каталога каталог.

  3. В области каталога слева щелкните имя каталога.

    Основная область обозревателя каталогов по умолчанию используется в списке каталогов . Вы также можете выбрать каталог там.

  4. На вкладке "Рабочие области" снимите флажок "Все рабочие области" с флажком "Доступ ".

    Если каталог уже привязан к одной или нескольким рабочим областям, этот флажок уже снят.

  5. Нажмите кнопку " Назначить рабочим областям" и введите или найдите рабочие области, которые вы хотите назначить.

  6. (Необязательно) Ограничение доступа к рабочей области только для чтения.

    В меню "Управление уровнем доступа" выберите "Изменить доступ только для чтения".

    Вы можете изменить этот выбор в любое время, изменив каталог и выбрав "Изменить доступ к чтению и записи".

Чтобы отменить доступ, перейдите на вкладку "Рабочие области" , выберите рабочую область и нажмите кнопку "Отозвать".

CLI

Существует две группы команд CLI Databricks и два шага, необходимых для назначения каталога рабочей области.

В следующих примерах замените <profile-name> имя профиля конфигурации проверки подлинности Azure Databricks. Он должен включать значение личного маркера доступа в дополнение к имени экземпляра рабочей области и идентификатору рабочей области, в которой вы создали личный маркер доступа. См . проверку подлинности маркера личного доступа Azure Databricks.

  1. catalogs Используйте команду группы update команд, чтобы задать для каталога isolation mode ISOLATEDзначение :

    databricks catalogs update <my-catalog> \
    --isolation-mode ISOLATED \
    --profile <profile-name>
    

    Значение по умолчанию isolation-modeOPEN для всех рабочих областей, подключенных к хранилищу метаданных.

  2. 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 автоматически, а у вас есть каталог рабочей области, администраторы рабочих областей имеют все разрешения только в этом каталоге. Если вы отменяете привязку этого каталога или привязываете его к другим каталогам, необходимо предоставить все необходимые разрешения вручную членам группы администраторов рабочей области в качестве отдельных пользователей или с помощью групп уровня учетных записей, так как группа администраторов рабочей области является локальной группой рабочей области. Дополнительные сведения о группах учетных записей и локальных группах рабочей области см. в разделе "Разница между группами учетных записей и локальными группами рабочей области".