Настройка контейнера профиля FSLogix с помощью Файлы Azure и служб домен Active Directory или доменных служб Microsoft Entra

В этой статье показано, как настроить контейнер профиля FSLogix с Файлы Azure при присоединении виртуальных машин узла сеанса к домену домен Active Directory Services (AD DS) или управляемому домену доменных служб Microsoft Entra.

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

Потребуется следующее:

  • Пул узлов, в котором узлы сеансов присоединены к домену AD DS или управляемому домену доменных служб Microsoft Entra и пользователям.
  • Группа безопасности в вашем домене, включающая пользователей, которые будут использовать контейнер профилей. Если вы используете AD DS, это должно быть синхронизировано с идентификатором Microsoft Entra.
  • Разрешение вашей подписки Azure на создание учетной записи хранения и добавление назначений ролей.
  • Учетная запись домена для присоединения компьютеров к домену и открытия командной строки PowerShell с повышенными привилегиями.
  • Идентификатор подписки Azure, в которой будет находиться ваша учетная запись хранения.
  • Компьютер, присоединенный к домену для установки и запуска модулей PowerShell, которые будут присоединять учетную запись хранения к вашему домену. На этом устройстве должна быть установлена Поддерживаемая версия Windows. Кроме того, вы можете использовать узел сеанса.

Внимание

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

Настройка учетной записи хранения для Контейнера профилей

Действия по настройке учетной записи хранения:

  1. Войдите на портал Azure.

  2. Выполните поиск учетных записей хранения в строке поиска.

  3. Выберите + Создать.

  4. Введите следующую информацию на вкладке Основные сведения на странице Создание учетной записи хранения:

    • Создайте новую группу ресурсов или выберите существующую для хранения учетной записи хранения.
    • Введите уникальное имя учетной записи хранения. Это имя учетной записи хранения должно содержать от 3 до 24 символов.
    • В качестве Региона рекомендуется выбрать то же расположение, что и для пула узлов Виртуальных рабочих столов Azure.
    • В разделе Производительность выберите Стандартный как минимум.
    • Если вы выбираете производительность категории "Премиум", установите для типа учетной записи в категории "Премиум"Общий доступ к файлам.
    • Для параметра Избыточность выберите значение Локально избыточное хранилище (LRS) как минимум.
    • Значения по умолчанию на оставшихся вкладках изменять не нужно.

    Совет

    У вашей организации могут быть определенные требования к изменению этих значений по умолчанию:

  5. Выберите Review + create (Просмотреть и создать). Просмотрите параметры и значения, которые будут использоваться, а затем нажмите Создать.

  6. После создания учетной записи хранения выберите Перейти к ресурсу.

  7. В разделе Хранилище данных выберите Общие папки.

  8. Нажмите + Общая папка.

  9. Введите имя, например профили, а затем для уровня выберите "Оптимизированная транзакция".

Присоединение учетной записи хранения к Active Directory

Чтобы использовать учетные записи Active Directory для разрешений общего доступа к общей папке, необходимо включить доменные службы AD DS или Доменные службы Microsoft Entra в качестве источника. Этот процесс присоединяет учетную запись хранения к домену, представляя ее как учетную запись компьютера. Ниже выберите соответствующую вкладку для вашего сценария и выполните указанные действия.

  1. Выполните вход в компьютер, присоединенный к домену AD DS. Или войдите на один из узлов сеансов.

  2. Загрузите и извлеките последнюю версию AzFilesHybrid из репозитория образцов Файлов Azure на GitHub. Запишите имя папки, в которую вы извлекаете файлы.

  3. Откройте командную строку PowerShell с повышенными привилегиями и перейдите к каталогу, в который вы ранее извлекли файлы.

  4. Выполните следующую команду, чтобы добавить модуль AzFilesHybrid в каталог модулей PowerShell пользователя:

    .\CopyToPSPath.ps1
    
  5. Импортируйте модуль AzFilesHybrid, выполнив следующую команду:

    Import-Module -Name AzFilesHybrid
    

    Внимание

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

  6. Войдите в Azure, выполнив команду, указанную ниже. Вам потребуется использовать учетную запись, которая имеет одну из следующих ролей управления доступом на основе ролей (RBAC):

    • Владелец учетной записи хранения
    • Владелец
    • Участник
    Connect-AzAccount
    

    Совет

    Если у вашей учетной записи Azure есть доступ к нескольким клиентам и (или) подпискам, необходимо выбрать правильную подписку, задав контекст. Дополнительные сведения см. в статье Объекты контекста Azure PowerShell

  7. Присоедините учетную запись хранения к домену, выполнив приведенные ниже команды и заменив значения для $subscriptionId, $resourceGroupName и $storageAccountName своими значениями. Вы также можете добавить параметр -OrganizationalUnitDistinguishedName, чтобы указать подразделение, в котором будет размещаться учетная запись компьютера.

    $subscriptionId = "subscription-id"
    $resourceGroupName = "resource-group-name"
    $storageAccountName = "storage-account-name"
    
    Join-AzStorageAccount `
        -ResourceGroupName $ResourceGroupName `
        -StorageAccountName $StorageAccountName `
        -DomainAccountType "ComputerAccount"
    
  8. Чтобы убедиться, что учетная запись хранения присоединилась к вашему домену, выполните приведенные ниже команды и просмотрите выходные данные, заменив значения $resourceGroupName и $storageAccountName своими значениями:

    $resourceGroupName = "resource-group-name"
    $storageAccountName = "storage-account-name"
    
    (Get-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName).AzureFilesIdentityBasedAuth.DirectoryServiceOptions; (Get-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName).AzureFilesIdentityBasedAuth.ActiveDirectoryProperties
    

Внимание

Если вашем подразделении действуют ограничения срока действия пароля, необходимо обновить пароль до истечения срока его действия, чтобы предотвратить сбои проверки подлинности при доступе к общим папкам Azure. Дополнительные сведения см. в статье Обновление пароля для идентификации вашей учетной записи хранения в AD DS.

Назначение пользователям ролей

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

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

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

  2. Выберите Управление доступом (IAM) .

  3. Нажмите +Добавить, а затем в раскрывающемся меню выберите Добавить назначение роли.

  4. Выберите роль участник общего доступа SMB к данным файла хранилища и нажмите Далее.

  5. На вкладке Члены выберите параметр Пользователь, группа или субъект-служба и нажмите + Выбрать членов. На панели поиска найдите и выберите группу безопасности, включающую в себя пользователей, которые будут использовать Контейнер профилей.

  6. Выберите Просмотреть и назначить, чтобы завершить назначение.

Задайте разрешения NTFS

Затем необходимо задать разрешения NTFS в папке, которая требует получения ключа доступа для Учетной записи хранения.

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

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

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

  3. В разделе Безопасность и сеть выберите Ключи доступа, а затем отобразите и скопируйте ключ из key1.

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

  1. Войдите на узел сеансов, который включен в пул узлов.

  2. Откройте командную строку PowerShell с повышенными привилегиями и выполните приведенную ниже команду, чтобы обозначить учетную запись хранения как диск на узле сеансов. Подключенный диск не будет отображаться в проводнике, но его можно будет просмотреть с помощью команды net use. Это позволяет задать разрешения для общей папки.

    net use <desired-drive-letter>: \\<storage-account-name>.file.core.windows.net\<share-name> <storage-account-key> /user:Azure\<storage-account-name>
    
    • Замените <desired-drive-letter> нужной буквой диска (например, y:).
    • Замените оба экземпляра <storage-account-name> именем учетной записи хранения, указанной ранее.
    • Замените <share-name> именем общей папки, которую создали ранее.
    • Замените <storage-account-key> ключом учетной записи хранения Azure.

    Например:

    net use y: \\fsprofile.file.core.windows.net\share HDZQRoFP2BBmoYQ(truncated)== /user:Azure\fsprofile
    
  3. Выполните следующие команды, чтобы задать разрешения для общей папки, которые позволят пользователям Виртуального рабочего стола Azure создавать собственные профили, при этом блокируя доступ к профилям других пользователей. Следует использовать группу безопасности Active Directory, включающую в себя пользователей, которым разрешается использовать Контейнер профилей. В приведенных ниже командах замените <mounted-drive-letter> букву диска, используемого для сопоставления диска, с доменом и <DOMAIN\GroupName> sAMAccountName группы Active Directory, для которой потребуется доступ к общей папке. Вы также можете указать имя участника-пользователя (UPN) пользователя.

    icacls <mounted-drive-letter>: /grant "<DOMAIN\GroupName>:(M)"
    icacls <mounted-drive-letter>: /grant "Creator Owner:(OI)(CI)(IO)(M)"
    icacls <mounted-drive-letter>: /remove "Authenticated Users"
    icacls <mounted-drive-letter>: /remove "Builtin\Users"
    

    Например:

    icacls y: /grant "CONTOSO\AVDUsers:(M)"
    icacls y: /grant "Creator Owner:(OI)(CI)(IO)(M)"
    icacls y: /remove "Authenticated Users"
    icacls y: /remove "Builtin\Users"
    

Настройка узлов сеансов для использования Контейнера профилей

Чтобы использовать Контейнер профилей, необходимо убедиться, что приложения FSLogix установлены на виртуальных машинах узла сеансов. Приложения FSLogix предустановлены в многосеансовых операционных системах Windows 10 Корпоративная и Windows 11 Корпоративная, но, тем не менее, потребуется выполнить приведенные ниже действия, поскольку в них может быть не установлена последняя версия. Если вы используете пользовательский образ, вы можете установить приложения FSLogix в свой образ.

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

Чтобы настроить Контейнер профилей на виртуальных машинах узла сеансов, выполните следующие действия:

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

  2. Если вам нужно установить или обновить приложения FSLogix, скачайте последнюю версию FSLogix и установите ее, запустив FSLogixAppsSetup.exe, а затем следуйте инструкциям мастера установки. Дополнительные сведения о процессе установки, включая настройки и автоматическую установку, см. в разделе Загрузка и установка FSLogix.

  3. Откройте командную строку PowerShell с повышенными привилегиями и выполните следующие команды, заменив \\<storage-account-name>.file.core.windows.net\<share-name> на UNC-путь к созданной ранее учетной записи хранения. Эти команды позволяют включить контейнер профилей и настроить расположение общей папки.

    $regPath = "HKLM:\SOFTWARE\FSLogix\profiles"
    New-ItemProperty -Path $regPath -Name Enabled -PropertyType DWORD -Value 1 -Force
    New-ItemProperty -Path $regPath -Name VHDLocations -PropertyType MultiString -Value \\<storage-account-name>.file.core.windows.net\<share-name> -Force
    
  4. Перезапустите виртуальную машину, используемую для создания пользовательского образа, или виртуальную машину узла сеанса. Эти действия необходимо повторить для всех оставшихся виртуальных машин узла сеансов.

Теперь вы завершили настройку Контейнера профилей. При установке Контейнера профилей в пользовательском образе необходимо завершить создание пользовательского образа. Для получения дополнительной информации выполните действия, описанные в статье Создание пользовательского образа в Azure, начиная с раздела Создание окончательного образа для локального развертывания.

Проверка создания профиля

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

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

Пользователи могут проверить, настроен ли Контейнер профилей, выполнив следующие действия:

  1. Войдите на Виртуальный рабочий стол Azure в качестве тестового пользователя.

  2. Когда пользователь входит в систему, перед доступом к рабочему столу должно появиться сообщение "Подождите загрузки служб приложений FSLogix" как часть процесса входа.

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

  1. Откройте портал Azure.

  2. Откройте ранее созданную учетную запись хранения.

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

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

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

Более подробные сведения об основных понятиях, связанных с Контейнером профилей FSLogix для службы "Файлы Azure", см. в статье Контейнер профилей FSLogix для службы "Файлы Azure".