Aracılığıyla paylaş


Visual Studio Code Kimlik Doğrulaması için Azure Kimlik Eklentisi

Bu paket, JavaScript için Azure Identity kitaplığına (@azure/identity) Visual Studio Code için "Azure Hesabı" uzantısı aracılığıyla kimlik doğrulamasını etkinleştiren bir eklenti sağlar. Bu eklenti, içindeki @azure/identity bağımlılıklarını VisualStudioCodeCredential sağlar ve kendi başına veya bir DefaultAzureCredentialparçası olarak kullanılmasını sağlar.

Kaynak kodu | Örnekleri

Başlarken

import { useIdentityPlugin } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";

useIdentityPlugin(vsCodePlugin);

Önkoşullar

Paketi yükleme

Bu paket, JavaScript için Azure Identity ile kullanılmak üzere tasarlanmıştır. kullanarak npmhem hem de @azure/identity bu paketi yükleyin:

$ npm install --save @azure/identity
$ npm install --save-dev @azure/identity-vscode

Desteklenen Ortamlar

JavaScript için Azure Identity eklentileri, v12'den başlayarak Node.js kararlı (çift numaralı) sürümlerini destekler. Eklentiler diğer Node sürümlerinde çalıştırılabilir ancak destek garanti değildir. @azure/identity-vscodetarayıcı ortamlarını desteklemez.

Önemli kavramlar

veya Microsoft kimlik platformu (Azure Active Directory) ilk kez kullanıyorsanız@azure/identity, önce Microsoft Identity Platform ile kullanma @azure/identity makalesini okumanızı öneririz. Bu belge size platformu ve Azure hesabınızı doğru yapılandırmayı daha iyi anlamanızı sağlayacaktır.

Azure Kimlik Eklentileri

@azure/identity Sürüm 2.0.0'dan itibaren, JavaScript için Kimlik istemci kitaplığı bir eklenti API'sini içerir. Bu paket (@azure/identity-vscode), paketten @azure/identity en üst düzey useIdentityPlugin işleve bağımsız değişken olarak geçirmeniz gereken bir eklenti nesnesini dışarı aktarır. Visual Studio Code için "Azure Hesabı" uzantısı aracılığıyla kimlik doğrulamasını aşağıdaki gibi etkinleştirin:

import { useIdentityPlugin } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";

useIdentityPlugin(vsCodePlugin);

çağrıldıktan useIdentityPluginVisualStudioCodeCredential sonra paketinden @azure/identity seçeneği etkinleştirilir. Bu eklenti kullanılmıyorsa, VisualStudioCodeCredential bir CredentialUnavailableErroroluşturur ve öğesinin DefaultAzureCredentialbir parçası olarak kullanılamaz.

Visual Studio Code Kimlik Doğrulaması

VisualStudioCodeCredential, "Azure Hesabı" uzantısından kimlik doğrulama oturumunu kullanır. Bu kimlik bilgilerini kullanmak için uzantıyı kullanarak Azure hesabınızda oturum açmanız gerekir. Bunu yapmak için Visual Studio Code açın, uzantının yüklü olduğundan emin olun ve bir tarayıcı penceresi açıp Azure'da oturum açmak için "Azure: Oturum Aç" seçeneğini kullanarak Komut Paleti'nden oturum açın. Alternatif olarak, cihaz kodu akışını kullanmak için "Azure: Cihaz Kodu ile Oturum Aç" seçeneğini belirleyebilirsiniz.

Oturum açtıktan sonra bir abonelik seçmeniz gerekebilir (örneğin, birden çok Azure aboneliğiniz varsa) ve menüyü kullanarak "Azure: Abonelikleri Seç" girişini seçerek etkin aboneliği değiştirebilirsiniz.

Örnekler

Eklenti kaydedildikten sonra, içindeki diğer kimlik bilgisi sınıflarına @azure/identitybenzer şekilde kullanabilirsinizVisualStudioCodeCredential:

import { useIdentityPlugin, VisualStudioCodeCredential } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";

useIdentityPlugin(vsCodePlugin);

async function main() {
  const credential = new VisualStudioCodeCredential();

  // The graph.microsoft.com scope is used 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);
});

AyrıcaDefaultAzureCredential, varsa Visual Studio Code için "Azure Hesabı" uzantısını kullanarak kimlik doğrulamayı deneyecek olan kullanabilirsiniz:

import { useIdentityPlugin, DefaultAzureCredential } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";

useIdentityPlugin(vsCodePlugin);

async function main() {
  // With the plugin enabled above, `DefaultAzureCredential` will use
  // Visual Studio Code's "Azure Account" extension to authenticate if
  // it is available.
  const credential = new DefaultAzureCredential();

  // This will print a JWT access_token and its expiration timestamp
  // The graph.microsoft.com scope is used as an example
  console.log("Token:", await credential.getToken("https://graph.microsoft.com/.default"));
}

main().catch((error) => {
  console.error("An error occurred:", error);
  process.exit(1);
});

Sorun giderme

Günlüğe Kaydetme

Günlüğe kaydetmenin etkinleştirilmesi hatalarla ilgili yararlı bilgilerin ortaya çıkarılmasına yardımcı olabilir. HTTP isteklerinin ve yanıtlarının günlüğünü görmek için ortam değişkenini AZURE_LOG_LEVEL olarak infoayarlayın. Alternatif olarak, günlüğü çalışma zamanında içinde çağrılarak setLogLevel@azure/loggeretkinleştirilebilir:

import { setLogLevel } from "@azure/logger";

setLogLevel("info");

Sonraki adımlar

Geri Bildirim Sağlama

Hatalarla karşılaşırsanız veya önerileriniz varsa lütfen bir sorun açın.

Katkıda bulunma

Bu kitaplığa katkıda bulunmak isterseniz, kodu derleme ve test etme hakkında daha fazla bilgi edinmek için lütfen katkıda bulunma kılavuzunu okuyun.

İzlenimler