トークン キャッシュ永続化用の Azure ID プラグイン
このパッケージは、永続的なトークン キャッシュを有効にする JavaScript () 用の Azure Identity ライブラリに@azure/identity
プラグインを提供します。 トークン キャッシュの永続化により、組み込みのトークン キャッシュは、ローカル オペレーティング システムによって提供されるセキュリティで保護されたストレージ システムを使用してセッション間で保持できます。
作業の開始
import { useIdentityPlugin } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
前提条件
パッケージをインストールする
このパッケージは、Azure Identity for JavaScript で使用するように設計されています。 と の両方 @azure/identity
を使用してこのパッケージを npm
インストールします。
$ npm install --save @azure/identity
$ npm install --save @azure/identity-cache-persistence
サポートされる環境
JavaScript 用の Azure Identity プラグインでは、v12 以降の安定した (番号付き) バージョンのNode.jsがサポートされます。 プラグインは他の Node バージョンで実行される可能性があります。サポートは保証されません。
@azure/identity-cache-persistence
はブラウザー環境をサポートしていません 。
主要な概念
@azure/identity
または Microsoft ID プラットフォーム (Azure Active Directory) を初めて使用する場合は、まず「Microsoft ID プラットフォームで @azure/identity
を使用する」をお読みください。 このドキュメントでは、プラットフォームの詳細と、Azure アカウントを正しく構成する方法について説明しています。
Azure Identity Plugins
@azure/identity
バージョン 2.0.0 以降、JavaScript 用の ID クライアント ライブラリにはプラグイン API が含まれています。 このパッケージ (@azure/identity-cache-persistence
) は、パッケージから最上位 useIdentityPlugin
の関数に引数として渡す必要があるプラグイン オブジェクトを @azure/identity
エクスポートします。 次のように、プログラムでトークン キャッシュの永続化を有効にします。
import { useIdentityPlugin } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
を呼び出 useIdentityPlugin
すと、永続トークン キャッシュ プラグインがパッケージに @azure/identity
登録され、永続的なトークン キャッシュをサポートするすべての資格情報 (コンストラクター オプションに含 tokenCachePersistenceOptions
まれるもの) で使用できるようになります。
例
プラグインが登録されたら、 に設定true
されたプロパティを資格情報コンストラクターに渡tokenCachePersistenceOptions
enabled
すことで、トークン キャッシュの永続化を有効にすることができます。 次の例では、 を DeviceCodeCredential
使用します。トークンの永続的なキャッシュを使用すると、キャッシュされたトークンが使用可能な場合に対話型のデバイス コード認証フローをスキップできるためです。
import { useIdentityPlugin, DeviceCodeCredential } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
async function main() {
const credential = new DeviceCodeCredential({
tokenCachePersistenceOptions: {
enabled: true
}
});
// We'll use the Microsoft Graph scope as an example
const scope = "https://graph.microsoft.com/.default";
// Print out part of the access token
console.log((await credential.getToken(scope)).token.substr(0, 10), "...");
}
main().catch((error) => {
console.error("An error occurred:", error);
process.exit(1);
});
トラブルシューティング
ログの記録
ログの記録を有効にすると、エラーに関する有用な情報を明らかにするのに役立つ場合があります。 HTTP 要求と応答のログを表示するには、環境変数 AZURE_LOG_LEVEL
を info
に設定します。 または、@azure/logger
で setLogLevel
を呼び出して、実行時にログ記録を有効にすることもできます。
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
次のステップ
フィードバックの提供
バグが発生した場合や提案がある場合は、issue をオープンしてください。
共同作成
このライブラリに投稿する場合、コードをビルドしてテストする方法の詳細については、投稿ガイドを参照してください。
Azure SDK for JavaScript