Méthodes d’authentification sans clé
Dans l’authentification sans clé auprès d’Azure OpenAI pour JavaScript, vous utilisez les identités managées ou les principaux de service Azure pour vous authentifier au lieu de coder en dur les clés API ou d’autres informations d’identification. Cela s’effectue via la classe DefaultAzureCredential ou ManagedIdentityCredential, qui offre un moyen sécurisé et rationalisé d’obtenir des jetons nécessaires à l’authentification des services Azure. Voici comment cela fonctionne dans la pratique :
- Configurer l’environnement Azure : vérifiez que votre environnement Azure est configuré correctement avec des identités managées.
- Initialisez les informations d’identification : utilisez la classe
DefaultAzureCredentialouManagedIdentityCredentialclasse à partir du Kit de développement logiciel (SDK) Azure Identity pour JavaScript pour gérer le processus d’authentification en toute transparence.
Voici un exemple d’extrait de code :
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);
- Créer une instance client : Instanciez votre
AzureOpenAIavec le point de terminaison et les informations d’identification obtenues à partir duDefaultAzureCredential. - Effectuer des appels d’API : utilisez le client pour interagir avec les services Azure OpenAI en toute sécurité, sans gérer explicitement les informations d’identification sensibles.