Мониторинг и отзыв личных маркеров доступа

Для проверки подлинности в REST API Azure Databricks пользователь может создать личный маркер доступа (PAT) и использовать его в запросе REST API. Пользователь также может создать субъект-службу и использовать его с личным маркером доступа для вызова REST API Azure Databricks в средствах CI/CD и автоматизации. В этой статье объясняется, как администраторы Azure Databricks могут управлять личными маркерами доступа в рабочей области. Чтобы создать личный маркер доступа, ознакомьтесь с проверкой подлинности личного маркера доступа Azure Databricks.

Использование OAuth вместо личных маркеров доступа

Databricks рекомендует использовать маркеры доступа OAuth вместо PATS для повышения безопасности и удобства. Databricks продолжает поддерживать PAT, но из-за их большего риска безопасности предполагается, что вы проверяете текущее использование PAT учетной записи и переносите пользователей и субъектов-служб в маркеры доступа OAuth. Чтобы создать маркер доступа OAuth (вместо PAT) для использования с субъектом-службой в службе автоматизации, ознакомьтесь с проверкой подлинности доступа к Azure Databricks с субъектом-службой с помощью OAuth (OAuth M2M).

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

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

Чтобы оценить использование PAT собственной организации и запланировать миграцию с PATs на маркеры доступа OAuth, см. статью "Оценка использования личного маркера доступа" в учетной записи Databricks.

Требования

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

Включение или отключение проверки подлинности личного маркера доступа для рабочей области

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

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

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

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

  1. Перейдите на страницу параметров.

  2. Перейдите на вкладку Дополнительно.

  3. Щелкните переключатель Личные маркеры доступа.

  4. Нажмите кнопку Подтвердить.

    Для вступления в силу этого изменения может потребоваться несколько секунд.

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

Управление тем, кто может создавать и использовать личные маркеры доступа

Администраторы рабочей области могут устанавливать разрешения на личные маркеры доступа, чтобы управлять тем, какие пользователи, субъекты-службы и группы могут создавать и использовать маркеры. Дополнительные сведения о настройке разрешений маркера личного доступа см. в статье "Управление разрешениями личного маркера доступа".

Установка максимального времени существования новых личных маркеров доступа

Вы можете управлять максимальным временем существования новых маркеров в рабочей области с помощью интерфейса командной строки Databricks или API конфигурации рабочей области. Это ограничение применяется только к новым маркерам.

Примечание.

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

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

Задайте для параметра maxTokenLifetimeDays максимальный срок действия для новых маркеров (в днях) в виде целого числа. Если установить нулевое значение, то для новых маркеров будет устанавливаться неограниченный срок действия. Например:

Интерфейс командной строки Databricks

databricks workspace-conf set-status --json '{
  "maxTokenLifetimeDays": "90"
}'

API конфигурации рабочей области

curl -n -X PATCH "https://<databricks-instance>/api/2.0/workspace-conf" \
  -d '{
  "maxTokenLifetimeDays": "90"
  }'

Сведения об использовании поставщика Databricks Terraform для управления максимальным временем существования новых маркеров в рабочей области см. в разделе databricks_workspace_conf Resource.

Мониторинг и отзыв маркеров

В этом разделе описывается, как использовать интерфейс командной строки Databricks для управления существующими токенами в рабочей области. Вы также можете использовать API управления маркерами. Databricks автоматически отменяет личные маркеры доступа, которые не использовались в течение 90 или более дней.

Получение маркеров для рабочей области

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

Python

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

spark.createDataFrame([token.as_dict() for token in w.token_management.list()]).createOrReplaceTempView('tokens')

display(spark.sql('select * from tokens order by creation_time'))

Bash

# Filter results by a user by using the `created-by-id` (to filter by the user ID) or `created-by-username` flags.
databricks token-management list

Удаление (отзыв) маркера

Чтобы удалить маркер, замените TOKEN_ID идентификатором маркера для удаления:

databricks token-management delete TOKEN_ID