Megosztás a következőn keresztül:


Azure AI-Search szolgáltatás kezelése REST API-kkal

Ebből a cikkből megtudhatja, hogyan hozhat létre és konfigurálhat Azure AI-Search szolgáltatás a Felügyeleti REST API-k használatával. Csak a felügyeleti REST API-k biztosítják a korai hozzáférést az előzetes verziójú funkciókhoz.

A Felügyeleti REST API stabil és előzetes verzióban érhető el. Az előzetes verziójú funkciók elérésekor mindenképpen állítsa be az előzetes verziójú API-verziót.

Az összes Felügyeleti REST API-nak vannak példái. Ha a cikk nem foglalkozik egy feladatsal, tekintse meg inkább az API-hivatkozást .

Előfeltételek

Hozzáférési jogkivonat lekérése

A felügyeleti REST API-hívások hitelesítése a Microsoft Entra-azonosítón keresztül történik. Meg kell adnia egy hozzáférési jogkivonatot a kéréshez, valamint egy erőforrás létrehozásához és konfigurálásához szükséges engedélyeket.

Hozzáférési jogkivonatot az Azure CLI vagy az Azure PowerShell használatával hozhat létre.

  1. Nyisson meg egy parancshéjat az Azure CLI-hez.

  2. Jelentkezzen be az Azure-előfizetésbe.

    az login
    
  3. Kérje le a bérlőazonosítót és az előfizetés azonosítóját. Ha több bérlője vagy előfizetése van, győződjön meg arról, hogy a megfelelőt használja.

    az account show
    
  4. Hozzáférési jogkivonat lekérése.

    az account get-access-token --query accessToken --output tsv
    

Rendelkeznie kell egy bérlőazonosítóval, előfizetés-azonosítóval és tulajdonosi jogkivonattal. Ezeket az értékeket a .rest következő lépésben létrehozott fájlba .http illessze be.

A Visual Studio Code telepítése

Ha nem ismeri a Visual Studio Code REST-ügyfelét, ez a szakasz a telepítést is tartalmazza, hogy elvégezhesse a feladatokat ebben a rövid útmutatóban.

  1. Indítsa el a Visual Studio Code-ot, és válassza a Bővítmények csempét .

  2. Keresse meg a REST-ügyfelet, és válassza a Telepítés lehetőséget.

    Képernyőkép a telepítési parancsról.

  3. Nyisson meg vagy hozzon létre egy vagy .http egy .rest fájlkiterjesztéssel ellátott új fájlt.

  4. Adja meg az előző lépésben lekért értékek változóit.

    @tenantId = PASTE-YOUR-TENANT-ID-HERE
    @subscriptionId = PASTE-YOUR-SUBSCRIPTION-ID-HERE
    @token = PASTE-YOUR-TOKEN-HERE
    
  5. Ellenőrizze, hogy a munkamenet működőképes-e, ha felsorolja a keresési szolgáltatásokat az előfizetésében.

     ### List search services
     GET https://management.azure.com/subscriptions/{{subscriptionId}}/providers/Microsoft.Search/searchServices?api-version=2023-11-01
          Content-type: application/json
          Authorization: Bearer {{token}}
    
  6. Válassza a Kérés elküldése elemet. A válasznak egy szomszédos panelen kell megjelennie. Ha már rendelkezik keresési szolgáltatásokkal, azok megjelennek a listában. Ellenkező esetben a lista üres, de amíg a HTTP-kód 200 OK, készen áll a következő lépésekre.

    HTTP/1.1 200 OK
    Cache-Control: no-cache
    Pragma: no-cache
    Content-Length: 22068
    Content-Type: application/json; charset=utf-8
    Expires: -1
    x-ms-ratelimit-remaining-subscription-reads: 11999
    x-ms-request-id: f47d3562-a409-49d2-b9cd-6a108e07304c
    x-ms-correlation-request-id: f47d3562-a409-49d2-b9cd-6a108e07304c
    x-ms-routing-request-id: WESTUS2:20240314T012052Z:f47d3562-a409-49d2-b9cd-6a108e07304c
    Strict-Transport-Security: max-age=31536000; includeSubDomains
    X-Content-Type-Options: nosniff
    X-Cache: CONFIG_NOCACHE
    X-MSEdge-Ref: Ref A: 12401F1160FE4A3A8BB54D99D1FDEE4E Ref B: CO6AA3150217011 Ref C: 2024-03-14T01:20:52Z
    Date: Thu, 14 Mar 2024 01:20:52 GMT
    Connection: close
    
    {
      "value": [ . . . ]
    }
    

Szolgáltatás létrehozása vagy frissítése

Létrehoz vagy frissít egy keresési szolgáltatást az aktuális előfizetés alatt. Ez a példa változókat használ a keresési szolgáltatás nevéhez és régiójához, amelyeket még nem definiáltak. Adja meg közvetlenül a neveket, vagy adjon hozzá új változókat a gyűjteményhez.

### Create a search service (provide an existing resource group)
@resource-group = my-rg
@search-service-name = my-search
PUT https://management.azure.com/subscriptions/{{subscriptionId}}/resourceGroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

    {
        "location": "North Central US",
        "sku": {
            "name": "basic"
        },
        "properties": {
            "replicaCount": 1,
            "partitionCount": 1,
            "hostingMode": "default"
        }
      }

S3HD-szolgáltatás létrehozása

S3HD-szolgáltatás létrehozásához használja a tulajdonságok és hostingMode a sku tulajdonságok kombinációját. Állítsa be sku a standard3 "hostingMode" értéket és a "hostingMode" értéket HighDensity.

@resource-group = my-rg
@search-service-name = my-search
PUT https://management.azure.com/subscriptions/{{subscriptionId}}/resourceGroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

    {
        "location": "{{region}}",
        "sku": {
          "name": "standard3"
        },
        "properties": {
          "replicaCount": 1,
          "partitionCount": 1,
          "hostingMode": "HighDensity"
        }
    }

Szerepköralapú hozzáférés konfigurálása adatsíkhoz

A következőkre vonatkozik: Keresési index adatszolgáltatója, Keresési index adatolvasója, Keresési szolgáltatás közreműködője

Ebben a lépésben konfigurálja a keresési szolgáltatást úgy, hogy felismerjen egy engedélyezési fejlécet az OAuth2 hozzáférési jogkivonatot biztosító adatkéréseken.

Ha szerepköralapú hozzáférés-vezérlést szeretne használni az adatsík-műveletekhez, állítsa be authOptions aadOrApiKey és küldje el a kérést.

Ha kizárólag szerepköralapú hozzáférés-vezérlést szeretne használni, kapcsolja ki az API-kulcs hitelesítését egy második kérés követésével, ezúttal igaz értékre disableLocalAuth .

PATCH https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

    {
        "properties": {
            "disableLocalAuth": false,
            "authOptions": {
                "aadOrApiKey": {
                    "aadAuthFailureMode": "http401WithBearerChallenge"
                }
            }
        }
    }

Ügyfél által felügyelt kulcsszabályzat kényszerítése

Ha ügyfél által felügyelt titkosítást használ, engedélyezheti a "encryptionWithCMK" szolgáltatást a "kényszerítés" beállítással "Engedélyezve" értékre, ha azt szeretné, hogy a keresési szolgáltatás jelentse a megfelelőségi állapotát.

A szabályzat engedélyezésekor a bizalmas adatokat tartalmazó objektumokat létrehozó REST-hívások, például az adatforráson belüli kapcsolati sztring, sikertelenek lesznek, ha nincs megadva titkosítási kulcs:"Error creating Data Source: "CannotCreateNonEncryptedResource: The creation of non-encrypted DataSources is not allowed when encryption policy is enforced."

PATCH https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}
     
     {
        "properties": {
            "encryptionWithCmk": {
                "enforcement": "Enabled"
            }
        }
    }

Szemantikai rangsoroló letiltása

Bár a szemantikai rangsoroló alapértelmezés szerint nincs engedélyezve , a szolgáltatásszinten zárolhatja a funkciót, így nagyobb biztonsággal nem használható.

### disable semantic ranker
PATCH https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}
     
     {
        "properties": {
            "semanticSearch": "Disabled"
        }
    }

Olyan számítási feladatok letiltása, amelyek adatokat küldnek külső erőforrásokba

Az Azure AI Search külső adatforrásokra ír a tudástár frissítésekor, a hibakeresési munkamenet állapotának mentésekor vagy a gyorsítótárazás bővítésekor. Az alábbi példa szolgáltatásszinten tiltja le ezeket a számítási feladatokat.

### disable-external-access
PATCH https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}
     
     {
        "properties": {
            "publicNetworkAccess": "Disabled"
        }
    }

Keresési szolgáltatás törlése

### delete a search service
DELETE https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

Rendszergazdai API-kulcsok listázása

### List admin keys
POST https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}/listAdminKeys?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

Rendszergazdai API-kulcsok ismételt létrehozása

Egyszerre csak egy rendszergazdai API-kulcsot lehet újragenerálni.

### Regnerate admin keys
POST https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}/regenerateAdminKey/primary?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

Lekérdezési API-kulcsok létrehozása

### Create a query key
@query-key-name = myQueryKey
POST https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}/createQueryKey/{name}?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

Privát végpontkapcsolatok listázása

### List private endpoint connections
GET https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups/{{resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}/privateEndpointConnections?api-version=2023-11-01 HTTP/1.1
     Content-type: application/json
     Authorization: Bearer {{token}}

Keresési műveletek listázása

### List search operations
GET https://management.azure.com/subscriptions/{{subscriptionId}}/resourcegroups?api-version=2021-04-01 HTTP/1.1
  Content-type: application/json
  Authorization: Bearer {{token}}

Következő lépések

A keresési szolgáltatás konfigurálása után a következő lépések közé tartozik egy index létrehozása vagy egy index lekérdezése a portál, a REST API-k vagy az Azure SDK használatával.