キーレス認証方法

完了

Azure OpenAI for JavaScript に対するキーレス認証では、API キーやその他の資格情報をハードコーディングする代わりに、Azure のマネージド ID またはサービス プリンシパルを使用して認証します。 これは、DefaultAzureCredential または ManagedIdentityCredential クラスを通じて行われます。これにより、Azure サービスの認証に必要なトークンを安全かつ効率的に取得できます。 実際の動作を次に示します。

  1. Azure 環境のセットアップ: マネージド ID を使用して Azure 環境が正しく構成されていることを確認します。
  2. 資格情報の初期化: Azure Identity SDK for JavaScript の DefaultAzureCredential クラスまたは ManagedIdentityCredential クラスを使用して、認証プロセスをシームレスに処理します。

コード スニペットの例を次に示します。

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. クライアント インスタンスの作成: エンドポイントと AzureOpenAIから取得した資格情報を使用して、DefaultAzureCredential をインスタンス化します。
  2. API 呼び出しを行う: 機密性の高い資格情報を明示的に処理することなく、クライアントを使用して Azure OpenAI サービスと安全に対話します。