Поделиться через


Быстрый старт: Подключение к службе поиска

В этом быстром старте вы используете управление доступом на основе ролей (RBAC) и Microsoft Entra ID для установления бесключевого подключения к службе поиска Azure AI. Затем вы используете Python в Visual Studio Code для взаимодействия со службой.

Бессерверные подключения обеспечивают повышенную безопасность с помощью детализированных разрешений и проверки подлинности на основе удостоверений. Мы не рекомендуем жестко закодированные ключи API, но если вы предпочитаете их, см. статью Connect to Azure AI Search с помощью ключей.

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

Настройка доступа на основе ролей

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

Чтобы настроить доступ:

  1. Войдите на портал Azure и выберите службу поиска.

  2. На левой панели выберите "Ключи > параметров".

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

    Снимок экрана: параметры управления доступом на портале Azure.

  4. В левой области выберите элемент управления доступом (IAM).

  5. Выберите Добавить>Добавить назначение ролей.

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

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

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

Получение сведений о службе

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

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

  1. Войдите на портал Azure и выберите службу поиска.

  2. В левой области выберите "Обзор".

  3. Запишите идентификатор подписки и конечную точку.

    Снимок экрана: идентификатор подписки и конечная точка на портале Azure.

Вход в Azure

Перед подключением к службе поиска ИИ Azure используйте Azure CLI для входа в подписку, содержащую службу. На этом шаге устанавливается удостоверение Microsoft Entra, которое DefaultAzureCredential используется для проверки подлинности запросов в следующем разделе.

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

  1. В локальной системе откройте программу командной строки.

  2. Войдите в Azure. Если у вас несколько подписок, выберите тот, идентификатор которого вы получили в разделе "Получение сведений о службе".

    az login
    

Замечание

В этом разделе показан базовый шаблон Python для бессерверных подключений. Для получения подробных инструкций обратитесь к определенному краткому руководству или учебнику, например, Краткое руководство: запуск агентского поиска в Azure AI.

Записные книжки Python в Visual Studio Code можно использовать для отправки запросов в службу поиска ИИ Azure. Для проверки подлинности запроса используйте DefaultAzureCredential класс из библиотеки удостоверений Azure.

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

  1. В локальной системе откройте Visual Studio Code.

  2. Создайте файл .ipynb .

  3. Создайте ячейку кода для установки azure-identity и azure-search-documents библиотек.

    pip install azure-identity azure-search-documents
    
  4. Создайте другую ячейку кода для проверки подлинности и подключения к службе поиска.

    from azure.identity import DefaultAzureCredential
    from azure.search.documents.indexes import SearchIndexClient
    
    service_endpoint = "PUT-YOUR-SEARCH-SERVICE-ENDPOINT-HERE"
    credential = DefaultAzureCredential()
    client = SearchIndexClient(endpoint=service_endpoint, credential=credential)
    
    # List existing indexes
    indexes = client.list_indexes()
    
    for index in indexes:
       index_dict = index.as_dict()
       print(json.dumps(index_dict, indent=2))
    
  5. Задайте service_endpoint значение, полученное в получении информации о службе.

  6. Выберите Выполнить все, чтобы выполнить обе ячейки кода.

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

Устранение ошибок 401

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

  • Вернитесь к настройке доступа на основе ролей. Служба поиска должна иметь управление доступом на основе ролей или оба . Политики на уровне подписки или группы ресурсов также могут переопределить назначения ролей.

  • Повторно войдите в Azure. Необходимо войти в подписку, содержащую службу поиска.

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

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

В этом кратком руководстве вы используете управление доступом на основе ролей (RBAC) и Microsoft Entra ID для установления подключения без ключа к службе поиска AI Azure. Затем вы используете REST в Visual Studio Code для взаимодействия со службой.

Бессерверные подключения обеспечивают повышенную безопасность с помощью детализированных разрешений и проверки подлинности на основе удостоверений. Мы не рекомендуем жестко закодированные ключи API, но если вы предпочитаете их, см. статью Connect to Azure AI Search с помощью ключей.

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

Настройка доступа на основе ролей

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

Чтобы настроить доступ:

  1. Войдите на портал Azure и выберите службу поиска.

  2. С левой панели выберите Ключи настройки>.

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

    Снимок экрана: параметры управления доступом на портале Azure.

  4. В левой области выберите элемент управления доступом (IAM).

  5. Выберите Добавить>Добавить назначение ролей.

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

  6. Назначьте вашей учетной записи пользователя или управляемому удостоверению роль участника службы поиска.

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

Получение сведений о службе

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

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

  1. Войдите на портал Azure и выберите службу поиска.

  2. В левой области выберите "Обзор".

  3. Запишите идентификатор подписки и конечную точку.

    Снимок экрана: идентификатор подписки и конечная точка на портале Azure.

Получение токена

Перед подключением к службе поиска ИИ Azure используйте Azure CLI для входа в подписку, содержащую службу, и создайте маркер идентификатора Microsoft Entra. Этот маркер используется для проверки подлинности запросов в следующем разделе.

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

  1. В локальной системе откройте программу командной строки.

  2. Войдите в Azure. Если у вас несколько подписок, выберите тот, идентификатор которого вы получили в разделе "Получение сведений о службе".

    az login
    
  3. Создайте маркер доступа.

    az account get-access-token --scope https://search.azure.com/.default --query accessToken --output tsv
    
  4. Запишите выходные данные токена.

Замечание

В этом разделе показан базовый шаблон REST для бессерверных подключений. Для получения подробных указаний обратитесь к конкретному краткому руководству или учебному пособию, например Краткое руководство: Запуск агентного извлечения в Azure AI Search.

Расширение клиента REST в Visual Studio Code можно использовать для отправки запросов в службу поиска ИИ Azure. Для проверки подлинности запроса добавьте в заголовок Authorization токен Microsoft Entra ID, который был ранее создан.

Чтобы подключиться с помощью REST, выполните следующее:

  1. В локальной системе откройте Visual Studio Code.

  2. Создайте .rest или .http файл.

  3. Вставьте следующие заполнители и запрос в файл.

    @baseUrl = PUT-YOUR-SEARCH-SERVICE-ENDPOINT-HERE
    @token = PUT-YOUR-PERSONAL-IDENTITY-TOKEN-HERE
    
    ### List existing indexes
    GET {{baseUrl}}/indexes?api-version=2024-07-01  HTTP/1.1
       Content-Type: application/json
       Authorization: Bearer {{token}}
    
  4. Замените @baseUrl значением, полученным в сведениях о службе Get.

  5. Замените @token значением, полученным в маркере Get.

  6. В разделе ### List existing indexesвыберите "Отправить запрос".

    Вы должны получить ответ, указывающий HTTP/1.1 200 OK на успешное подключение к службе поиска.

Устранение ошибок 401

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

  • Вернитесь к настройке доступа на основе ролей. Служба поиска должна иметь управление доступом на основе ролей или оба . Политики на уровне подписки или группы ресурсов также могут переопределить назначения ролей.

  • Вернитесь к Get token. Необходимо войти в подписку, содержащую службу поиска.

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

  • Убедитесь, что токен не имеет символа @ в заголовке запроса. Например, если переменная имеет значение @token, ссылка в запросе должна быть {{token}}.

  • Если ничего не помогает, перезапустите устройство, чтобы удалить кэшированные токены, а затем повторите действия, описанные в этом кратком руководстве, начиная с Получение токена.