Переключение ролей

Important

Эта функция доступна в общедоступной предварительной версии.

Вы можете принять роль в Azure Databricks несколькими способами. Во всех случаях разрешения, связанные с удостоверением пользователя, заменяются разрешениями роли на время сеанса или подключения, а все действия приписываются роли.

Чтобы принять роль, необходимо иметь для неё разрешение Assume — напрямую или как участник поддерживающей группы. См. статью "Управление разрешениями для группы".

Important

Все группы, назначенные для рабочей области, наследуют права доступа из системной группы рабочей области users, в которую входят все пользователи рабочей области. При работе с ролью вы по-прежнему видите каталоги, объекты Unity Catalog, ресурсы рабочей области и вычислительные ресурсы, общие для всех пользователей рабочей области, в дополнение к тем, доступ к которым был предоставлен непосредственно этой роли. Чтобы ограничить возможности просмотра роли, уменьшите разрешения системной users группы в рабочей области.

Переключатель ролей в рабочей области

Используйте переключатель ролей , чтобы взять на себя роль во всей рабочей области. На протяжении сеанса все права доступа, разрешения, права владения и действия определяются ролью.

  1. В рабочей области Azure Databricks щелкните имя рабочей области в правом верхнем углу верхней панели.
  2. Наведите указатель мыши на текущую рабочую область (верхний элемент в меню), чтобы открыть подменю переключателя ролей.
  3. В подменю щелкните роль, которую вы хотите выбрать.

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

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

Note

Если вы не видите подменю переключателя ролей, убедитесь, что вы входите в группу, назначенную рабочему пространству, или что вам предоставлено разрешение «Assume» для группы, назначенной рабочему пространству. См. статью "Управление разрешениями для группы".

Вы можете переключиться на роль прямо через URL-адрес рабочей области, добавив параметр запроса aid (assume ID) и указав в качестве его значения идентификатор группы: aid=<group-id>. При открытии этого URL-адреса выполняется вход под вашей обычной учетной записью, а затем система автоматически переключается на нужную роль, поэтому вам не нужно использовать переключатель ролей.

Например, чтобы открыть рабочую область, уже используемую для какой-либо роли:

https://<workspace-url>/?o=<workspace-id>&aid=<group-id>

Это полезно для добавления в закладки или обмена ссылкой, которая ведёт прямо к роли. Azure Databricks сохраняет параметр aid при перемещении в пределах рабочей области, поэтому на протяжении сеанса ваша роль сохраняется. Переключение на другую рабочую область очищает ее, так как роли зависят от рабочей области.

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

Выделенные вычислительные ресурсы, назначенные группе

При подключении к выделенному вычислительному ресурсу, назначенному группе, ваши права доступа автоматически сужаются до прав этой группы для всех операций с этим вычислительным ресурсом. Это эквивалентно тому, чтобы рассматривать группу как роль на время вычислительного сеанса, и это распространяется на блокноты, запросы и любые другие рабочие нагрузки, выполняемые на вычислительных ресурсах. В отличие от других методов, здесь вам не нужно сначала переключать роль в интерфейсе рабочей области: именно подключение к вычислительным ресурсам ограничивает вашу область действия этой группой.

Дополнительные сведения о настройке выделенных вычислений для группы см. в разделе "Доступ к выделенной группе вычислений".

интерфейс командной строки (CLI)

При проверке подлинности в рабочей области Azure Databricks с помощью интерфейса командной строки интерфейс командной строки открывает веб-браузер для завершения потока проверки подлинности. Если у вас есть разрешение на принятие одной или нескольких ролей, в браузере вы можете выбрать, проходить ли аутентификацию под своей учетной записью пользователя или под одной из этих ролей.

databricks auth login --host <workspace-url>

После завершения потока входа интерфейс командной строки авторизует все операции, используя этот профиль в качестве выбранной роли. Рассмотрим пример.

databricks warehouses list --profile <profile-name>

Дополнительные сведения о проверке подлинности CLI см. в разделе "Проверка подлинности" для интерфейса командной строки Databricks.

API (обмен маркерами OAuth)

Вы можете создать токен OAuth с областью действия, ограниченной ролью, и использовать его для выполнения вызовов API от имени этой роли. Токен с ограниченной областью действия авторизует выполнение всех операций API с правами этой роли.

Чтобы создать токен с областью действия, ограниченной ролью, запустите databricks auth login, как описано в CLI, и выберите роль в браузере. Полученный маркер имеет область действия в рамках этой роли.

Вы также можете вручную создать токен OAuth, ограниченный ролью, передав базовый ID группы в качестве параметра assume_group в ходе OAuth-потока с кодом авторизации. Дополнительные сведения см. в разделе "Авторизация доступа пользователей к Azure Databricks с помощью OAuth".

Сторонние средства бизнес-аналитики

Сторонние BI-инструменты, которые поддерживают OAuth (например, Tableau и Power BI), могут авторизоваться в качестве роли. После настройки средство бизнес-аналитики авторизует все запросы, которые он выполняет в качестве роли. Эта авторизация работает со всеми типами вычислительных ресурсов и хранилища SQL.

Что изменится при получении роли

Независимо от того, какой метод вы используете для выполнения роли:

  • Блокноты и запросы выполняются с использованием этой роли. Разрешения роли используются для всех операций доступа к данным и каталога Unity.
  • Задания, созданные при работе от имени этой роли, автоматически получают значение Run as, установленное на эту роль. Вы также можете установить для задания значение «Запуск от имени» для группы, не принимая ее роль заранее. См. «Запуск от имени» для группы.
  • Роль владеет всеми создаваемыми ресурсами рабочей области (записные книжки, запросы SQL, хранилища SQL, задания).
  • Журналы аудита фиксируютidentity_metadata.run_by в качестве идентификатора пользователя и identity_metadata.run_as в качестве роли.

Сведения о функциях, которые не поддерживаются или частично поддерживаются при выполнении роли, см. в разделе об ограничениях управления доступом на основе ролей (RBAC).

Дальнейшие действия