Az Azure OpenAI szolgáltatás konfigurálása felügyelt identitásokkal

Az összetettebb biztonsági forgatókönyvek azure-beli szerepköralapú hozzáférés-vezérlést (Azure RBAC) igényelnek. Ez a dokumentum bemutatja, hogyan hitelesíthető az OpenAI-erőforrással a Microsoft Entra ID használatával.

A következő szakaszokban az Azure CLI használatával fog bejelentkezni, és beszerezni egy tulajdonosi jogkivonatot az OpenAI-erőforrás meghívásához. Ha elakad, az egyes szakaszokban hivatkozásokat talál az Azure Cloud Shell/Azure CLI egyes parancsaihoz elérhető összes lehetőséggel.

Előfeltételek

Saját maga hozzárendelése a Cognitive Services felhasználói szerepköréhez

Rendelje hozzá magát a Cognitive Services OpenAI felhasználói vagy a Cognitive Services OpenAI-közreműködői szerepköréhez, hogy a fiók használatával azure OpenAI-következtetési API-hívásokat kezdeményezzen a kulcsalapú hitelesítés helyett. A módosítás végrehajtása után akár 5 percig is eltarthat, amíg a módosítás érvénybe lép.

Bejelentkezés az Azure CLI-be

Az Azure CLI-be való bejelentkezéshez futtassa az alábbi parancsot, és fejezze be a bejelentkezést. Előfordulhat, hogy újra meg kell tennie, ha a munkamenet túl sokáig tétlen volt.

az login

Csevegés befejezései

from azure.identity import DefaultAzureCredential, get_bearer_token_provider
from openai import AzureOpenAI

token_provider = get_bearer_token_provider(
    DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default"
)

client = AzureOpenAI(
    api_version="2024-02-15-preview",
    azure_endpoint="https://{your-custom-endpoint}.openai.azure.com/",
    azure_ad_token_provider=token_provider
)

response = client.chat.completions.create(
    model="gpt-35-turbo-0125", # model = "deployment_name".
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Does Azure OpenAI support customer managed keys?"},
        {"role": "assistant", "content": "Yes, customer managed keys are supported by Azure OpenAI."},
        {"role": "user", "content": "Do other Azure AI services support this too?"}
    ]
)

print(response.choices[0].message.content)

Az Azure OpenAI lekérdezése a vezérlősík API-val

import requests
import json
from azure.identity import DefaultAzureCredential

region = "eastus"
token_credential = DefaultAzureCredential()
subscriptionId = "{YOUR-SUBSCRIPTION-ID}" 


token = token_credential.get_token('https://management.azure.com/.default')
headers = {'Authorization': 'Bearer ' + token.token}

url = f"https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/locations/{region}/models?api-version=2023-05-01"

response = requests.get(url, headers=headers)

data = json.loads(response.text)

print(json.dumps(data, indent=4))

Felügyelt identitásokhoz való hozzáférés engedélyezése

Az OpenAI támogatja a Microsoft Entra-hitelesítést az Azure-erőforrások felügyelt identitásaival. Az Azure-erőforrások felügyelt identitásai a Microsoft Entra hitelesítő adataival engedélyezhetik az Azure AI-szolgáltatások erőforrásaihoz való hozzáférést az Azure-beli virtuális gépeken (virtuális gépeken), függvényalkalmazásokban, virtuálisgép-méretezési csoportokban és egyéb szolgáltatásokban futó alkalmazásokból. Ha felügyelt identitásokat használ az Azure-erőforrásokhoz a Microsoft Entra-hitelesítéssel együtt, elkerülheti a hitelesítő adatok tárolását a felhőben futó alkalmazásokkal.

Felügyelt identitások engedélyezése virtuális gépen

Mielőtt felügyelt identitásokat használhat az Azure-erőforrásokhoz az Azure AI-szolgáltatások erőforrásaihoz való hozzáférés engedélyezéséhez a virtuális gépről, engedélyeznie kell a felügyelt identitásokat a virtuális gépen lévő Azure-erőforrásokhoz. Ha tudni szeretné, hogyan engedélyezheti a felügyelt identitásokat az Azure-erőforrásokhoz, tekintse meg a következőt:

A felügyelt identitásokról további információt az Azure-erőforrások felügyelt identitásai című témakörben talál.