Бөлісу құралы:


Подключение к служба хранилища Azure с помощью управляемого удостоверения (поиск ВИ Azure)

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

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

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

  • Поиск ИИ Azure, уровень "Базовый" или более поздней версии с управляемым удостоверением.

Примечание.

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

Создание назначения ролей в служба хранилища Azure

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

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

  3. Выберите " Добавить " и выберите "Назначение роли".

  4. В списке ролей функции задания выберите роли, необходимые для службы поиска:

    Задача Назначение ролей
    Индексирование BLOB-объектов с помощью индексатора Добавление средства чтения данных BLOB-объектов хранилища
    Индексирование ADLS 2-го поколения с помощью индексатора Добавление средства чтения данных BLOB-объектов хранилища
    Индексирование таблиц с помощью индексатора Добавление средства чтения и доступа к данным
    Индексирование файлов с помощью индексатора Добавление средства чтения и доступа к данным
    Запись в хранилище знаний Добавьте хранилище BLOB-объектов DataContributor для проекций объектов и файлов, а также средства чтения и доступа к данным для проекций таблиц.
    Запись в кэш обогащения Добавление участника данных BLOB-объектов хранилища
    Сохранение состояния сеанса отладки Добавление участника данных BLOB-объектов хранилища
  5. Выберите Далее.

  6. Выберите управляемое удостоверение и выберите "Участники".

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

  8. Выберите удостоверение и сохраните назначение роли.

Укажите управляемое удостоверение в строка подключения

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

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

Совет

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

Управляемое удостоверение, назначаемое системой

У вас уже настроено управляемое удостоверение, назначаемое системой, и оно должно иметь назначение ролей в служба хранилища Azure.

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

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

POST https://[service name].search.windows.net/datasources?api-version=2023-11-01

{
    "name" : "blob-datasource",
    "type" : "azureblob",
    "credentials" : { 
        "connectionString" : "ResourceId=/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.Storage/storageAccounts/MY-DEMO-STORAGE-ACCOUNT/;" 
    },
    "container" : { 
        "name" : "my-container", "query" : "<optional-virtual-directory-name>" 
    }
}   

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

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

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

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

Укажите синтаксис, показанный identity в следующем примере.

POST https://[service name].search.windows.net/datasources?api-version=2023-11-01

{
    "name" : "blob-datasource",
    "type" : "azureblob",
    "credentials" : { 
        "connectionString" : "ResourceId=/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.Storage/storageAccounts/MY-DEMO-STORAGE-ACCOUNT/;" 
    },
    "container" : { 
        "name" : "my-container", "query" : "<optional-virtual-directory-name>" 
    },
    "identity" : { 
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity" : "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/MY-DEMO-USER-MANAGED-IDENTITY" 
    }
}   

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

Доступ к защищенным сетям данным в учетных записях хранения

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

См. также