Azure Identity-plugin-program för Visual Studio Code-autentisering
Det här paketet innehåller ett plugin-program till Azure Identity-biblioteket för JavaScript (@azure/identity
) som möjliggör autentisering via tillägget "Azure-konto" för Visual Studio Code. Det här plugin-programmet tillhandahåller beroenden för VisualStudioCodeCredential
in @azure/identity
och gör att det kan användas på egen hand eller som en del av DefaultAzureCredential
.
| Källkod Prover
Komma igång
import { useIdentityPlugin } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";
useIdentityPlugin(vsCodePlugin);
Förutsättningar
- En Azure-prenumeration.
- Installera Visual Studio Code och tillägget "Azure-konto"
Installera paketet
Det här paketet är utformat för att användas med Azure Identity för JavaScript. Installera både @azure/identity
och det här paketet med :npm
$ npm install --save @azure/identity
$ npm install --save-dev @azure/identity-vscode
Miljöer som stöds
Azure Identity-plugin-program för JavaScript stöder stabila (även numrerade) versioner av Node.js från och med v12. Plugin-program kan köras i andra Node-versioner, men inget stöd garanteras.
@azure/identity-vscode
stöder inte webbläsarmiljöer.
Viktiga begrepp
Om det här är första gången du använder @azure/identity
eller Microsofts identitetsplattform (Azure Active Directory) rekommenderar vi att du läser Använda @azure/identity
med Microsoft Identity Platform först. Det här dokumentet ger dig en djupare förståelse för plattformen och hur du konfigurerar ditt Azure-konto på rätt sätt.
Plugin-program för Azure Identity
@azure/identity
Från och med version 2.0.0 innehåller Identity-klientbiblioteket för JavaScript ett plugin-API. Det här paketet (@azure/identity-vscode
) exporterar ett plugin-objekt som du måste skicka som ett argument till funktionen på den översta nivån useIdentityPlugin
från @azure/identity
paketet. Aktivera autentisering via tillägget "Azure-konto" för Visual Studio Code på följande sätt:
import { useIdentityPlugin } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";
useIdentityPlugin(vsCodePlugin);
När du har anropat useIdentityPlugin
VisualStudioCodeCredential
aktiveras från @azure/identity
paketet. Om det här plugin-programmet inte används VisualStudioCodeCredential
kommer ett CredentialUnavailableError
, och det kommer inte att vara tillgängligt som en del av DefaultAzureCredential
.
Visual Studio Code-autentisering
VisualStudioCodeCredential
använder autentiseringssessionen från tillägget "Azure-konto". Om du vill använda den här autentiseringsuppgiften måste du logga in på ditt Azure-konto med tillägget . Det gör du genom att öppna Visual Studio Code, kontrollera att tillägget är installerat och logga in från kommandopaletten med alternativet "Azure: Logga in" för att öppna ett webbläsarfönster och logga in på Azure. Du kan också välja "Azure: Logga in med enhetskod" för att använda enhetens kodflöde.
När du har loggat in kan du behöva välja en prenumeration (till exempel om du har flera Azure-prenumerationer) och du kan ändra den aktiva prenumerationen med hjälp av menyn för att välja posten "Azure: Välj prenumerationer".
Exempel
När plugin-programmet har registrerats kan du använda VisualStudioCodeCredential
på liknande sätt som de andra autentiseringsuppgiftsklasserna i @azure/identity
:
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);
});
Du kan också använda DefaultAzureCredential
, som försöker autentisera med tillägget "Azure-konto" för Visual Studio Code om det är tillgängligt:
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);
});
Felsökning
Loggning
Aktivering av loggning kan hjälpa dig att hitta användbar information om fel. Om du vill se en logg över HTTP-begäranden och svar anger du AZURE_LOG_LEVEL
miljövariabeln till info
. Loggning kan också aktiveras vid körning genom att anropa setLogLevel
i @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Nästa steg
Ge feedback
Om du stöter på buggar eller har förslag kan du öppna ett problem.
Bidra
Om du vill bidra till det här biblioteket kan du läsa bidragsguiden om du vill veta mer om hur du skapar och testar koden.
Azure SDK for JavaScript