Области секретов

Управление секретами начинается с создания области секретов. Область секретов — это коллекция секретов, идентифицируемых по имени.

Рабочая область ограничена не более чем 1000 секретными область. Если вам потребуется больше, обратитесь в службу поддержки Azure Databricks.

Примечание.

Databricks рекомендует сопоставлять области секретов с ролями или приложениями, а не отдельными пользователями.

Обзор

Существует два типа областей секретов: на основе Azure Key Vault и на основе Databricks.

Области с поддержкой Azure Key Vault

Чтобы создать ссылку на секреты, хранящиеся в Azure Key Vault, можно создать область секретов с помощью Azure Key Vault. Затем можно использовать все секреты в соответствующем экземпляре Key Vault из этой области секретов. Так как секрет, поддерживаемый Azure Key Vault, область является интерфейсом только для чтения в Key Vault, PutSecretDeleteSecretоперации API секретов не допускаются. Чтобы управлять секретами в Azure Key Vault, необходимо использовать REST API набора секретов Azure или пользовательский интерфейс портал Azure.

Области на основе Databricks

Область секретов на основе Databricks хранится (поддерживается) в зашифрованной базе, которой владеет и управляет Azure Databricks. Имя области секретов:

  • Должно быть уникальным в пределах рабочей области.
  • Должно состоять из буквенно-цифровых символов, дефисов, знаков подчеркивания, @ и точек, а его длина не должна превышать 128 символов.

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

Вы создаете секрет, поддерживаемый Databricks, область с помощью интерфейса командной строки Databricks (версия 0.205 и выше). Кроме того, можно использовать API секретов.

Разрешения области

Области создаются с разрешениями, управляемыми секретными списками управления доступом. По умолчанию область создаются с разрешением MANAGE для пользователя, создавшего область (создатель), который позволяет создателю читать секреты в область, записывать секреты в область и изменять списки управления доступом для область. Если у вашей учетной записи есть план Premium, вы можете назначить детализированные разрешения в любое время после создания область. Дополнительные сведения см. в разделе "Секретные списки управления доступом".

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

Примечание.

Списки управления секретами находятся на уровне область. Если вы используете область с поддержкой Azure Key Vault, пользователи, которым предоставлен доступ к область имеют доступ ко всем секретам в Azure Key Vault. Чтобы ограничить доступ, используйте отдельные экземпляры хранилища ключей Azure.

Создание области секретов на основе Azure Key Vault

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

Требования

  • У вас должна быть роль участника Key Vault, участника или владельца в экземпляре хранилища ключей Azure, который вы хотите использовать для резервного копирования секрета область.

    Если у вас нет экземпляра хранилища ключей, следуйте инструкциям в статье "Создание хранилища ключей" с помощью портал Azure.

    Примечание.

    Для создания секрета, поддерживаемого Azure Key Vault, область требуется роль участника или владельца в экземпляре хранилища ключей Azure, даже если служба Azure Databricks ранее была предоставлена доступ к хранилищу ключей.

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

    Unable to grant read/list permission to Databricks service principal to KeyVault 'https://xxxxx.vault.azure.net/': Status code 403, {"odata.error":{"code":"Authorization_RequestDenied","message":{"lang":"en","value":"Insufficient privileges to complete the operation."},"requestId":"XXXXX","date":"YYYY-MM-DDTHH:MM:SS"}}
    

Настройка экземпляра хранилища ключей Azure для Azure Databricks

  1. Войдите на портал Azure, найдите и выберите экземпляр хранилища ключей Azure.

  2. Выберите вкладку "Конфигурация доступа" в разделе Параметры.

  3. Задайте для модели разрешений политику доступа к Хранилищу.

    Примечание.

    Создание секрета, поддерживаемого Azure Key Vault, область предоставляет разрешения get and List идентификатору приложения для службы Azure Databricks с помощью политик доступа к хранилищу ключей. Модель разрешений управления доступом на основе ролей Azure в настоящее время не поддерживается в Azure Databricks.

  4. Выберите вкладку Сеть в разделе Параметры.

  5. В брандмауэрах и виртуальных сетях разрешить доступ: разрешить общедоступный доступ из определенных виртуальных сетей и IP-адресов.

    В разделе "Исключение" проверка разрешить доверенным службы Майкрософт обойти этот брандмауэр.

    Примечание.

    Вы также можете задать разрешение доступа: разрешить общедоступный доступ из всех сетей.

Создание области секретов с поддержкой Azure Key Vault

  1. Переход к https://<databricks-instance>#secrets/createScope. Замените <databricks-instance>URL-адресом рабочей области для развертывания Azure Databricks. Этот URL-адрес учитывает регистр (область должен createScope быть верхним регистром).

    Создание области

  2. Введите имя области секретов. В именах областей секретов учитывается регистр.

  3. Используйте раскрывающийся список "Управление субъектом", чтобы указать, есть ли у всех пользователей разрешение MANAGE для этого секрета область или только создатель секрета область (то есть вы).

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

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

    Если у вашей учетной записи есть стандартный план, необходимо задать разрешение MANAGE для группы "Все пользователи". Если вы выбрали здесь Автор, то при попытке сохранить область появится сообщение об ошибке.

    Дополнительные сведения о разрешении MANAGE см. в разделе "Секретные списки управления доступом".

  4. Введите DNS-имя (например, https://databrickskv.vault.azure.net/) и идентификатор ресурса, например:

    /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/databricks-rg/providers/Microsoft.KeyVault/vaults/databricksKV
    

    Эти свойства доступны на вкладке Свойства Azure Key Vault на портале Azure.

    Вкладка

  5. Нажмите кнопку Создать.

  6. Чтобы убедиться в том, что область создана успешно, используйте команду Databricks CLIdatabricks secrets list-scopes.

Создание секрета, поддерживаемого Databricks, область

В именах областей секретов учитывается регистр.

Создание области с помощью интерфейса командной строки Databricks:

databricks secrets create-scope <scope-name>

По умолчанию область создаются с разрешением MANAGE для пользователя, создавшего область. Если у вашей учетной записи нет плана Premium, при создании область необходимо переопределить это значение по умолчанию и явно предоставить разрешение MANAGE "пользователям" (всем пользователям).

databricks secrets create-scope <scope-name> --initial-manage-principal users

Вы также можете создать секрет, поддерживаемый Databricks, область с помощью API секретов.

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

После создания области секрета на основе Databricks можно добавить секреты.

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

Создание списка существующих областей в рабочей области с помощью интерфейса командной строки:

databricks secrets list-scopes

Вы также можете перечислить существующие область с помощью API секретов.

Удаление области секрета

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

databricks secrets delete-scope <scope-name>

Вы также можете удалить секрет область с помощью API секретов.