Schlüssellose Authentifizierungsmethoden

Abgeschlossen

Bei der schlüssellosen Authentifizierung bei Azure OpenAI für JavaScript verwenden Sie die verwalteten Identitäten oder Dienstprinzipale von Azure, um sich zu authentifizieren, anstatt API-Schlüssel oder andere Anmeldeinformationen zu codieren. Dies erfolgt über die DefaultAzureCredential- oder ManagedIdentityCredential-Klasse, die eine sichere und optimierte Möglichkeit zum Abrufen von Token bietet, die für die Authentifizierung von Azure-Diensten erforderlich sind. So funktioniert es in der Praxis:

  1. Einrichten von Azure-Umgebung: Stellen Sie sicher, dass Ihre Azure-Umgebung ordnungsgemäß mit verwalteten Identitäten konfiguriert ist.
  2. Initialisieren von Anmeldeinformationen: Verwenden Sie die DefaultAzureCredential Klasse oder ManagedIdentityCredential Klasse aus dem Azure Identity SDK für JavaScript, um den Authentifizierungsprozess nahtlos zu verarbeiten.

Hier ist ein Beispielcodeausschnitt:

import { AzureOpenAI } from 'openai';
import { getBearerTokenProvider, DefaultAzureCredential } from '@azure/identity';

// Make sure to set AZURE_OPENAI_ENDPOINT with the endpoint of your Azure resource.

const credential = new DefaultAzureCredential();
const scope = 'https://cognitiveservices.azure.com/.default';
const azureADTokenProvider = getBearerTokenProvider(credential, scope);

// Create client instance
// 3) Create an Azure OpenAI client
const openai = new AzureOpenAI({ azureADTokenProvider });

// 4) Make API call and print response
const result = await openai.chat.completions.create({
  model: 'gpt-4-1106-preview',
  messages: [{ role: 'user', content: 'Say hello!' }],
});

console.log(result.choices[0]!.message?.content);
  1. Clientinstanz erstellen: Instanziieren Sie Ihre AzureOpenAI mit dem Endpunkt und den Anmeldeinformationen, die Sie aus dem DefaultAzureCredentialerhalten haben.
  2. API-Aufrufe durchführen: Verwenden Sie den Client, um sicher mit Azure OpenAI-Diensten zu interagieren, ohne explizit vertrauliche Anmeldeinformationen zu verarbeiten.