Metodi di autenticazione senza chiave

Completato

Nell'autenticazione senza chiave in Azure OpenAI per JavaScript, si usano le identità gestite o i principali del servizio di Azure per autenticarsi anziché inserire direttamente nel codice le chiavi API o altre credenziali. Questa operazione viene eseguita tramite la classe DefaultAzureCredential o ManagedIdentityCredential, che offre un modo sicuro e semplificato per ottenere i token necessari per l'autenticazione dei servizi di Azure. Ecco come funziona in pratica:

  1. Configurare l'ambiente di Azure: assicurarsi che l'ambiente di Azure sia configurato correttamente con le identità gestite.
  2. Inizializza credenziali: usare la classe DefaultAzureCredential o ManagedIdentityCredential da Azure Identity SDK per JavaScript per gestire facilmente il processo di autenticazione.

Ecco un frammento di codice di esempio:

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. Creare un'istanza client: Creare un'istanza di AzureOpenAI con l'endpoint e le credenziali ottenute da DefaultAzureCredential.
  2. Effettuare chiamate API: usare il client per interagire con i servizi OpenAI di Azure in modo sicuro, senza gestire in modo esplicito le credenziali sensibili.