Управление доступом к общим папкам данных Delta Sharing (для поставщиков)

В этой статье объясняется, как предоставить получателю данных доступ к общей папке Delta Share. Также показывает как просматривать, обновлять и отзывать доступ.

Требования

Чтобы предоставить общий доступ к данным получателям, выполните указанные действия.

  • Необходимо использовать рабочую область Azure Databricks с подключенным хранилищем метаданных каталога Unity.
  • Необходимо использовать хранилище ИЛИ кластер SQL, использующий режим доступа к кластеру с поддержкой Unity-Catalog.
  • Общие папки и получатели уже должны быть определены.
  • Вы должны быть одним из следующих элементов:
    • Администратор хранилища метаданных.
    • Пользователь с делегированными разрешениями или правами владения как на общей папке, так и на объекты получателя ((USE SHARE + SET SHARE PERMISSION) или владельца общей папки) И (USE RECIPIENT или владельца получателя).

Предоставление получателю доступа к общей папке

Чтобы предоставить общий доступ получателям, можно использовать Обозреватель каталога, интерфейс командной строки каталога Databricks Unity или команды SQL в записной книжке Azure Databricks или редакторе sql-запросов Databricks.

Необходимые разрешения: одно из следующих элементов:

  • Администратор хранилища метаданных.
  • Делегированные разрешения или владение как для общего ресурса, так и для объектов получателя ((USE SHARE + SET SHARE PERMISSION) или владельца общей папки) AND (USE RECIPIENT или владельца получателя).

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

Чтобы добавить получателей в общую папку (начиная с общей папки):

  1. В рабочей области Azure Databricks щелкните Значок каталога"Каталог".
  2. В левой области разверните меню "Разностный общий доступ" и выберите "Общий доступ".
  3. На вкладке "Общие папки " найдите и выберите общую папку.
  4. Нажмите кнопку "Добавить получателя".
  5. В диалоговом окне "Добавление получателя" начните вводить имя получателя или щелкните раскрывающееся меню, чтобы выбрать получателей, которые нужно добавить в общую папку.
  6. Нажмите кнопку Добавить.

Чтобы предоставить общий доступ получателю (начиная с получателя):

  1. В рабочей области Azure Databricks щелкните Значок каталога"Каталог".
  2. В левой области разверните меню "Разностный общий доступ" и выберите "Общий доступ".
  3. На вкладке "Получатели" найдите и выберите получателя.
  4. Нажмите кнопку "Предоставить общий ресурс".
  5. В диалоговом окне предоставления общего ресурса начните вводить имя общей папки или щелкните раскрывающееся меню, чтобы выбрать общие папки, которые требуется предоставить.
  6. Нажмите кнопку "Предоставить".

SQL

Выполните следующую команду в записной книжке или редакторе sql-запросов Databricks.

GRANT SELECT ON SHARE <share-name> TO RECIPIENT <recipient-name>;

SELECT — единственная привилегия, которую можно предоставить получателю в общей папке.

Cli

Выполните следующую команду с помощью интерфейса командной строки Databricks. Замените <share-name> именем общей папки, которую вы хотите предоставить получателю, и замените <recipient-name> ее именем. SELECT — это единственная привилегия, которую можно предоставить в общей папке.

databricks shares update <share-name> \
--json='{
  "changes": [
    {
      "principal": "<recipient-name>",
      "add": [
        "SELECT"
      ]
    }
  ]
}'

Отмена доступа получателя к общей папке

Чтобы отменить доступ получателя к общей папке, можно использовать Обозреватель каталога, интерфейс командной строки каталога Databricks Unity или REVOKE ON SHARE команду SQL в записной книжке Azure Databricks или редакторе sql-запросов Databricks.

Необходимые разрешения: администратор хранилища метаданных, пользователь с USE SHARE привилегиями или владельцем объекта общего доступа.

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

Чтобы отозвать доступ получателя к общей папке, начиная с общей папки:

  1. В рабочей области Azure Databricks щелкните Значок каталога"Каталог".
  2. В левой области разверните меню "Разностный общий доступ" и выберите "Общий доступ".
  3. На вкладке "Общие папки " найдите и выберите общую папку.
  4. На вкладке "Получатели" найдите получателя.
  5. Меню Кебаб Выберите меню кебаб (также известное как трехточное меню) и нажмите кнопку "Отозвать".
  6. В диалоговом окне подтверждения нажмите кнопку "Отменить".

Чтобы отменить доступ получателя к общей папке, начиная с получателя:

  1. В рабочей области Azure Databricks щелкните Значок каталога"Каталог".
  2. В левой области разверните меню "Разностный общий доступ" и выберите "Общий доступ".
  3. На вкладке "Получатели" найдите и выберите получателя.
  4. На вкладке "Общие папки " найдите общую папку.
  5. Меню Кебаб Выберите меню кебаб (также известное как трехточное меню) в строке общего ресурса и нажмите кнопку "Отменить".
  6. В диалоговом окне подтверждения нажмите кнопку "Отменить".

SQL

Выполните следующую команду в записной книжке или редакторе sql-запросов Databricks.

REVOKE SELECT ON SHARE <share-name> FROM RECIPIENT <recipient-name>;

Cli

Выполните следующую команду с помощью интерфейса командной строки Databricks. Замените <share-name> именем общей папки, которую вы хотите удалить для получателя, и замените <recipient-name> ее именем. SELECT — единственная привилегия, которую можно удалить для получателя.

databricks shares update <share-name> \
--json='{
  "changes": [
    {
      "principal": "<recipient-name>",
      "remove": [
        "SELECT"
      ]
    }
  ]
}'

Просмотр грантов на общую долю или гранты, имеющиеся получателем

Для просмотра текущих грантов в общей папке можно использовать Обозреватель каталога Каталога Databricks или SHOW GRANTS ON SHARE команду SQL в записной книжке Azure Databricks или редакторе запросов Databricks SQL.

Необходимые разрешения: если вы просматриваете получателей, которым предоставлен доступ к общей папке, необходимо быть администратором хранилища метаданных, пользователем с USE SHARE привилегиями или владельцем объекта общего доступа. Если вы просматриваете общие папки, предоставленные получателю, необходимо быть администратором хранилища метаданных, пользователем с USE RECIPIENT привилегиями или владельцем объекта получателя.

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

Чтобы просмотреть получателей с доступом к общей папке, выполните указанные действия.

  1. В рабочей области Azure Databricks щелкните Значок каталога"Каталог".
  2. В левой области разверните меню "Разностный общий доступ" и выберите "Общий доступ".
  3. На вкладке "Общие папки " найдите и выберите общую папку.
  4. Перейдите на вкладку "Получатели", чтобы просмотреть всех получателей , имеющих доступ к общей папке.

SQL

Выполните следующую команду в записной книжке или редакторе sql-запросов Databricks.

SHOW GRANT ON SHARE <share-name>;

Cli

Выполните следующую команду с помощью интерфейса командной строки Databricks.

databricks shares share-permissions <share-name>

Чтобы просмотреть текущие гранты общего ресурса, имеющиеся получателем, можно использовать Обозреватель каталога, интерфейс командной строки Databricks или SHOW GRANTS TO RECIPIENT команду SQL в записной книжке Azure Databricks или редакторе запросов SQL Databricks.

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

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

  1. В рабочей области Azure Databricks щелкните Значок каталога"Каталог".
  2. В левой области разверните меню "Разностный общий доступ" и выберите "Общий доступ".
  3. На вкладке "Получатели" найдите и выберите получателя.
  4. Перейдите на вкладку "Общие папки" , чтобы просмотреть все общие папки, к которым у получателя есть доступ.

SQL

Выполните следующую команду в записной книжке или редакторе sql-запросов Databricks.

SHOW GRANTS TO RECIPIENT <recipient-name>;

Cli

Выполните следующую команду с помощью интерфейса командной строки Databricks.

databricks recipients share-permissions <recipient-name>