Включение проверки подлинности доменных служб Microsoft Entra в файлах Azure

Файлы Azure поддерживает проверку подлинности на основе удостоверений для общих папок Windows через блок сообщений сервера (S МБ) с помощью протокола проверки подлинности Kerberos с помощью следующих методов:

  • Локальные доменные службы Active Directory (AD DS)
  • Доменные службы Microsoft Entra
  • Microsoft Entra Kerberos для гибридных удостоверений пользователей

Эта статья посвящена включению и настройке доменных служб Microsoft Entra (ранее azure домен Active Directory Services) для проверки подлинности на основе удостоверений с помощью общих папок Azure. В этом сценарии проверки подлинности учетные данные Microsoft Entra и учетные данные доменных служб Microsoft Entra одинаковы и могут использоваться взаимозаменяемо.

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

Если вы не знакомы с Файлы Azure, мы рекомендуем ознакомиться с нашим руководством по планированию перед чтением этой статьи.

Примечание.

Файлы Azure поддерживает проверку подлинности Kerberos с помощью доменных служб Microsoft Entra с шифрованием RC4-HMAC и AES-256. Мы рекомендуем использовать AES-256.

Файлы Azure поддерживает проверку подлинности для доменных служб Microsoft Entra с полной или частичной синхронизацией (область d) с идентификатором Microsoft Entra. Для сред с область синхронизацией администраторы должны знать, что Файлы Azure только учитывает назначения ролей RBAC Azure, предоставленные субъектам, которые синхронизируются. Назначения ролей, предоставленные удостоверениям, не синхронизированным с идентификатором Microsoft Entra с доменными службами Microsoft Entra, будут игнорироваться службой Файлы Azure.

Применяется к

Тип общей папки SMB NFS
Стандартные общие папки (GPv2), LRS/ZRS Да Нет
Стандартные общие папки (GPv2), GRS/GZRS Да Нет
Общие папки уровня "Премиум" (FileStorage), LRS/ZRS Да Нет

Необходимые компоненты

Прежде чем включить доменные службы Microsoft Entra через S МБ для общих папок Azure, убедитесь, что выполнены следующие предварительные требования:

  1. Выберите или создайте клиент Microsoft Entra.

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

    Чтобы создать новый клиент Microsoft Entra, можно добавить клиент Microsoft Entra и подписку Microsoft Entra. Если у вас есть существующий клиент Microsoft Entra, но вы хотите создать новый клиент для использования с общими папками Azure, см. статью "Создание клиента Microsoft Entra".

  2. Включите доменные службы Microsoft Entra в клиенте Microsoft Entra.

    Чтобы обеспечить проверку подлинности с помощью учетных данных Microsoft Entra, необходимо включить доменные службы Microsoft Entra для клиента Microsoft Entra. Если вы не администратор клиента Microsoft Entra, обратитесь к администратору и выполните пошаговые инструкции по включению доменных служб Microsoft Entra с помощью портал Azure.

    Обычно развертывание доменных служб Microsoft Entra занимает около 15 минут. Убедитесь, что состояние работоспособности доменных служб Microsoft Entra отображается с включенной синхронизацией хэша паролей, прежде чем перейти к следующему шагу.

  3. Присоединение к домену виртуальной машины Azure с помощью доменных служб Microsoft Entra.

    Чтобы получить доступ к общей папке Azure с помощью учетных данных Microsoft Entra из виртуальной машины, виртуальная машина должна быть присоединена к доменным службам Microsoft Entra. Дополнительные сведения см. в статье Присоединение виртуальной машины Windows Server к управляемому домену. Проверка подлинности доменных служб Microsoft Entra по протоколу SMB с общими папками Azure поддерживается только на виртуальных машинах Azure с ОС версий выше Windows 7 или Windows Server 2008 R2.

    Примечание.

    Не присоединенные к домену виртуальные машины могут получить доступ к общим папкам Azure с помощью проверки подлинности доменных служб Microsoft Entra, только если виртуальная машина не подключена к контроллерам домена для доменных служб Microsoft Entra. Обычно для этого требуется VPN типа "сеть — сеть" или "точка — сеть".

  4. Выберите или создайте файловый ресурс Azure.

    Выберите новую или существующую общую папку, связанную с той же подпиской, что и клиент Microsoft Entra. Дополнительные сведения см. в статье Создание общей папки в службе файлов Azure. Для обеспечения оптимальной производительности рекомендуется, чтобы файловый ресурс находился в том же регионе, что и виртуальная машина, с которой вы планируете получать доступ к ресурсу.

  5. Проверьте сетевое подключение службы файлов Azure путем подключения файловых ресурсов Azure с использованием ключа учетной записи хранения.

    Чтобы убедиться, что ваша виртуальная машина и файловый ресурс настроены правильно, попробуйте установить общий доступ к файлу с помощью ключа учетной записи хранения. Дополнительные сведения см. в статье Использование общей папки Azure в Windows.

Доступность в регионах

Файлы Azure проверка подлинности с помощью доменных служб Microsoft Entra доступна во всех общедоступных регионах Azure, Gov и Китае.

Обзор рабочего процесса

Прежде чем включить проверку подлинности доменных служб Microsoft Entra по протоколу S МБ для общих папок Azure, убедитесь, что идентификатор Microsoft Entra и служба хранилища Azure среды настроены правильно. Мы рекомендуем проверить предварительные требования, чтобы убедиться, что все необходимые действия были предприняты.

Выполните следующие действия, чтобы предоставить доступ к ресурсам Файлы Azure с учетными данными Microsoft Entra:

  1. Включите проверку подлинности доменных служб Microsoft Entra через S МБ для учетной записи хранения, чтобы зарегистрировать учетную запись хранения в связанном развертывании доменных служб Microsoft Entra.
  2. Назначьте разрешения на уровне общего ресурса удостоверению Microsoft Entra (пользователю, группе или субъекту-службе).
  3. Подключение в общую папку Azure с помощью ключа учетной записи хранения и настройки списков управления доступом Windows для каталогов и файлов.
  4. Подключите файловый ресурс Azure из виртуальной машины, присоединенной к домену.

На следующей схеме показан комплексный рабочий процесс для включения проверки подлинности доменных служб Microsoft Entra через S МБ для Файлы Azure.

Схема, показывающая идентификатор Microsoft Entra по протоколу S МБ для рабочего процесса Файлы Azure.

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

Чтобы включить проверку подлинности доменных служб Microsoft Entra по протоколу SMB для службы "Файлы Azure", вы можете задать свойство в учетных записях хранения с помощью портала Azure, Azure PowerShell или Azure CLI. Установка этого свойства неявно "присоединяет" учетную запись хранения к связанной среде доменных служб Microsoft Entra. Затем включается проверка подлинности доменных служб Microsoft Entra по протоколу SMB для всех новых и существующих общих папок в учетной записи хранения.

Помните, что вы можете включить проверку подлинности доменных служб Microsoft Entra по протоколу SMB только после их успешного развертывания в арендаторе Microsoft Entra. Дополнительные сведения см. в разделе Необходимые условия.

Чтобы включить проверку подлинности доменных служб Microsoft Entra через S МБ с помощью портал Azure, выполните следующие действия.

  1. На портале Azure перейдите к существующей учетной записи хранения или создайте ее.

  2. Выберите элементы Хранение данных>Общие папки.

  3. В разделе параметров общей папки выберите доступ на основе удостоверений: не настроен.

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

  4. В разделе доменные службы Microsoft Entra выберите "Настройка", а затем включите эту функцию, задав флажок проверка box.

  5. Выберите Сохранить.

    Снимок экрана: область конфигурации доступа на основе удостоверений, доменные службы Microsoft Entra включены в качестве источника.

По умолчанию проверка подлинности доменных служб Microsoft Entra использует шифрование Kerberos RC4. Рекомендуем вместо этого настроить использование шифрования Kerberos AES-256, выполнив следующие инструкции:

Для выполнения операции в домене Active Directory, управляемом доменными службами Microsoft Entra, необходимо обратиться к контроллеру домена, чтобы запросить изменение свойства для объекта домена. Приведенные ниже командлеты являются командлетами Windows Server Active Directory PowerShell, а не командлетами Azure PowerShell. Из-за этого эти команды PowerShell должны выполняться с клиентского компьютера, присоединенного к домену доменных служб Microsoft Entra.

Внимание

Командлеты PowerShell Windows Server Active Directory в этом разделе должны выполняться в Windows PowerShell 5.1 с клиентского компьютера, присоединенного к домену доменных служб Microsoft Entra. PowerShell 7.x и Azure Cloud Shell не подходят для этого сценария.

Войдите на клиентский компьютер, присоединенный к домену, в качестве пользователя доменных служб Microsoft Entra с необходимыми разрешениями. У вас должен быть доступ на запись к msDS-SupportedEncryptionTypes атрибуту объекта домена. Как правило, члены группы контроллера домена AAD Администратор istrator будут иметь необходимые разрешения. Откройте стандартный сеанс PowerShell со стандартными правами и выполните следующие команды:

# 1. Find the service account in your managed domain that represents the storage account.

$storageAccountName= “<InsertStorageAccountNameHere>”
$searchFilter = "Name -like '*{0}*'" -f $storageAccountName
$userObject = Get-ADUser -filter $searchFilter

if ($userObject -eq $null)
{
   Write-Error "Cannot find AD object for storage account:$storageAccountName" -ErrorAction Stop
}

# 2. Set the KerberosEncryptionType of the object

Set-ADUser $userObject -KerberosEncryptionType AES256

# 3. Validate that the object now has the expected (AES256) encryption type.

Get-ADUser $userObject -properties KerberosEncryptionType

Внимание

Если вы ранее использовали шифрование RC4 и обновили учетную запись хранения для использования AES-256, необходимо запустить klist purge на клиенте, а затем повторно подключить общую папку, чтобы получить новые билеты Kerberos с AES-256.

Назначение разрешений на уровне общего ресурса

Чтобы получить доступ к ресурсам файлов Azure, используя проверку подлинности на основе удостоверений, удостоверение (пользователя, группы или субъекта-службы) должно обладать необходимыми разрешениями на уровне общего ресурса. Этот процесс аналогичен определению разрешений для общей папки Windows, в которой указывается тип доступа конкретного пользователя к файловому ресурсу. В инструкциях в этом разделе описывается, как назначить для удостоверения права доступа на чтение, запись или удаление к файловому ресурсу. Настоятельно рекомендуется назначать разрешения, объявляя действия и действия с данными явным образом, а не с помощью подстановочного знака (*).

Большинству пользователей и групп Microsoft Entra следует назначать разрешения на уровне общей папки, а затем настроить списки управления доступом Windows, чтобы контролировать разрешения на уровне каталога и файлов. Вы также можете задать стандартные разрешения на уровне общей папки, чтобы предоставить права участника, участника с повышенными правами или чтения всем удостоверениям, прошедшим проверку подлинности.

Для файлов Azure существует пять встроенных ролей Azure: в части из них разрешения на уровне общего доступа можно давать пользователям и группам.

  • Участник общего ресурса для данных файлов хранилища с расширенными правами может читать, записывать, удалять и изменять списки управления доступом Windows в общих папках Azure по протоколу SMB путем перезаписи существующих списков управления доступом Windows.
  • Читатель файловых данных хранилища с повышенными правами обеспечивает доступ на чтение к общим папкам Azure по протоколу SMB путем перезаписи существующих списков управления доступом Windows.
  • служба хранилища файловые данные S МБ Участник общего доступа позволяет просматривать, записывать и удалять доступ в общих папках Azure по протоколу S МБ.
  • Участник общей папки файловых данных хранилища SMB с повышенными правами может читать, записывать, удалять и изменять списки управления доступом Windows в общих папках Azure по протоколу SMB.
  • служба хранилища файловые данные S МБ Средство чтения общих папок предоставляет доступ для чтения в общих папках Azure по протоколу S МБ.

Внимание

Полный административный контроль над файловым ресурсом, включая возможность стать владельцем файла, требует использования ключа учетной записи хранения. элемент управления Администратор istrative не поддерживается с учетными данными Microsoft Entra.

Вы можете использовать портал Azure, PowerShell или Azure CLI, чтобы назначать удостоверению Microsoft Entra пользователя встроенные роли с правами на уровне общей папки. Помните, что назначение ролей Azure на уровне общего ресурса может занять некоторое время, чтобы ввести в силу. Мы рекомендуем использовать разрешение на общий уровень для высокоуровневого управления доступом к группе AD, представляющей группу пользователей и удостоверений, а затем использовать списки управления доступом Windows для детального управления доступом на уровне каталога или файла.

Назначение роли Azure удостоверению Microsoft Entra

Внимание

Назначьте разрешения, объявляя действия и действия с данными явным образом, а не с помощью подстановочного знака (*). Если определение пользовательской роли для действия с данными содержит подстановочный знак, все удостоверения, назначенные этой роли, получают доступ ко всем возможным действиям с данными. Это означает, что всем таким удостоверениям также будет предоставлен доступ к любому новому действию с данными, добавленному на платформу. Дополнительные доступ и разрешения, предоставляемые через новые действия или действия с данными, могут быть нежелательными для клиентов, использующих подстановочные знаки.

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

  1. На портале Azure перейдите к файловому ресурсу или выберите команду Создать файловый ресурс.
  2. Выберите Управление доступом (IAM).
  3. Выберите Добавить назначение роли
  4. В колонке "Добавление назначения ролей" выберите соответствующую встроенную роль (например, служба хранилища файловые данные S МБ общий доступ читателя или служба хранилища файловые данные S МБ участник общего доступа) из списка ролей. Оставьте доступ к параметру по умолчанию: пользователь, группа или субъект-служба Microsoft Entra. Выберите целевое удостоверение Microsoft Entra по имени или адресу электронной почты.
  5. Выберите "Рецензирование" и " Назначить" , чтобы завершить назначение роли.

Настройка Windows ACL

После назначения разрешений на уровне общего доступа с помощью RBAC можно назначить списки управления доступом Windows на корневом уровне, каталоге или на уровне файлов. Рассматривайте разрешения на уровне общего ресурса как модуль Gatekeeper высокого уровня, который определяет, может ли пользователь получать доступ к общему ресурсу, в то время как списки управления доступом Windows действуют на более низком уровне и определяют, какие операции пользователь может выполнять на уровне каталога или файла.

Служба файлов Azure поддерживает полный набор основных и дополнительных разрешений. Вы можете просматривать и настраивать списки управления доступом Windows для каталогов и файлов в общей папке Azure. Для этого подключите общую папку, а затем откройте проводник либо выполните команду Windows icacls или Set-ACL.

На уровне корневой папки файлового ресурса поддерживается следующий набор разрешений:

  • BUILTIN\Administrators:(OI)(CI)(F);
  • NT AUTHORITY\SYSTEM:(OI)(CI)(F);
  • BUILTIN\Users:(RX);
  • BUILTIN\Users:(OI)(CI)(IO)(GR,GE);
  • NT AUTHORITY\Authenticated Users:(OI)(CI)(M);
  • NT AUTHORITY\SYSTEM:(F);
  • CREATOR OWNER:(OI)(CI)(IO)(F).

Дополнительные сведения см. в статье Настройка разрешений на уровне каталога и файлов по протоколу SMB.

Подключение общей папки с помощью ключа учетной записи хранения

Прежде чем настроить списки управления доступом Windows, нужно подключить общую папку к виртуальной машине, присоединенной к домену, с помощью ключа учетной записи хранения. Для этого войдите в эту виртуальную машину как пользователь Microsoft Entra, откройте командную строку Windows и выполните приведенную ниже команду. Не забудьте заменить <YourStorageAccountName>, <FileShareName>а <YourStorageAccountKey> также собственными значениями. Если носитель "Z:" уже используется, укажите букву доступного диска. Ключ учетной записи хранения можно найти в портал Azure, перейдя к учетной записи хранения и выбрав ключи безопасности и сетевого>Get-AzStorageAccountKey доступа или командлет PowerShell.

Важно использовать net use команду Windows для подключения общей папки на этом этапе, а не PowerShell. Если подключить общую папку с помощью PowerShell, она не отобразится в проводнике Windows или cmd.exe и вы не сможете настроить списки управления доступом Windows.

Примечание.

Вы можете увидеть ACL полного элемента управления , примененного к роли. Обычно это разрешение включает возможность назначать разрешения. Но есть определенные ограничения, поскольку проверки доступа выполняются на двух уровнях: общей папки и файла или каталога. Только пользователи с ролью участника SMB с повышенными правами и полномочиями на создание файла или каталога могут назначать разрешения для новых файлов и каталогов без ключа учетной записи хранения. Для остальных назначенных разрешений на уровне каталога/файлов требуется подключение к общей папке с помощью ключа учетной записи хранения.

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:localhost\<YourStorageAccountName> <YourStorageAccountKey>

Настройка списков управления доступом Windows с помощью проводника Windows

После подключения общей папки Azure необходимо настроить списки управления доступом Windows. Это можно сделать с помощью проводника Windows или команды icacls.

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

  1. Откройте проводник Windows, щелкните правой кнопкой мыши файл или каталог и выберите пункт Свойства.
  2. Выберите вкладку Безопасность.
  3. Выберите "Изменить", чтобы изменить разрешения.
  4. Вы можете изменить разрешения существующих пользователей или выбрать "Добавить ", чтобы предоставить разрешения новым пользователям.
  5. В окне запроса для добавления новых пользователей введите целевое имя пользователя, которому нужно предоставить разрешения, в поле Введите имена объектов для выбора и выберите команду Проверить имена, чтобы найти полное имя нужного пользователя.
  6. Нажмите ОК.
  7. На вкладке Безопасность выберите все разрешения, которые необходимо предоставить новому пользователю.
  8. Выберите Применить.

Настройка списков управления доступом Windows с помощью icacls

Используйте следующую команду Windows, чтобы предоставить полный набор разрешений для всех каталогов и файлов в файловом ресурсе, включая корневую папку. Не забудьте заменить значения заполнителей в примере собственными значениями.

icacls <mounted-drive-letter>: /grant <user-email>:(f)

Дополнительные сведения об использовании icacls для задания списков управления доступом Windows и различных типов поддерживаемых разрешений см . в справочнике по командной строке для icacls.

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

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

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

Запустите приведенный ниже скрипт PowerShell или используйте портал Azure для постоянного подключения общей папки Azure и сопоставления его с диском Z в Windows. Если носитель "Z:" уже используется, укажите букву доступного диска. Так как вы прошли проверку подлинности, вам не потребуется предоставить ключ учетной записи хранения. Скрипт проверка, чтобы узнать, доступна ли эта учетная запись хранения через TCP-порт 445, который является портом S МБ используется. Не забудьте заменить <storage-account-name> и <file-share-name> с собственными значениями. Дополнительные сведения см. в статье Использование общей папки Azure с Windows.

Если вы не используете личные доменные имена, необходимо подключить общие папки Azure с помощью суффикса file.core.windows.net, даже если вы настроили частную конечную точку для общей папки.

$connectTestResult = Test-NetConnection -ComputerName <storage-account-name>.file.core.windows.net -Port 445
if ($connectTestResult.TcpTestSucceeded) {
    cmd.exe /C "cmdkey /add:`"<storage-account-name>.file.core.windows.net`" /user:`"localhost\<storage-account-name>`""
    New-PSDrive -Name Z -PSProvider FileSystem -Root "\\<storage-account-name>.file.core.windows.net\<file-share-name>" -Persist -Scope global
} else {
    Write-Error -Message "Unable to reach the Azure storage account via port 445. Check to make sure your organization or ISP is not blocking port 445, or use Azure P2S VPN, Azure S2S VPN, or Express Route to tunnel SMB traffic over a different port."
}

Вы также можете использовать net-use команду из командной строки Windows для подключения общей папки. Не забудьте заменить <YourStorageAccountName> и <FileShareName> с собственными значениями.

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName>

Подключение общей папки из виртуальной машины, не присоединенной к домену, или виртуальной машины, присоединенной к другому домену AD

Не присоединенные к домену виртуальные машины или виртуальные машины, присоединенные к домену, отличные от учетной записи хранения, могут получить доступ к общим папкам Azure с помощью проверки подлинности доменных служб Microsoft Entra, только если виртуальная машина не подключена к контроллерам домена для доменных служб Microsoft Entra, которые находятся в Azure. Обычно это требует настройки VPN типа "сеть — сеть" или "точка — сеть". Пользователь, обращаюющийся к общей папке, должен иметь удостоверение (удостоверение Microsoft Entra, синхронизированное с идентификатором Microsoft Entra с доменными службами Microsoft Entra) в управляемом домене доменных служб Microsoft Entra и должно предоставлять явные учетные данные (имя пользователя и пароль).

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

  • Укажите учетные данные, такие как DOMAINNAME\username , где DOMAINNAME — домен доменных служб Microsoft Entra, а имя пользователя — имя пользователя удостоверения в доменных службах Microsoft Entra или
  • Используйте нотацию username@domainFQDN, где domainFQDN является полным доменным именем.

С помощью одного из этих подходов клиент сможет связаться с контроллером домена в домене доменных служб Microsoft Entra, чтобы запросить и получить билеты Kerberos.

Например:

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:<DOMAINNAME\username>

or

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:<username@domainFQDN>

Следующие шаги

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

Дополнительные сведения о проверке подлинности на основе удостоверений для Файлы Azure см. в следующих ресурсах: