Azure Identity-invoegtoepassing voor Visual Studio Code-verificatie
Dit pakket biedt een invoegtoepassing voor de Azure Identity-bibliotheek voor JavaScript (@azure/identity
) die verificatie via de extensie 'Azure-account' voor Visual Studio Code mogelijk maakt. Deze invoegtoepassing biedt de afhankelijkheden van de VisualStudioCodeCredential
in @azure/identity
en schakelt deze in voor gebruik op zichzelf of als onderdeel van DefaultAzureCredential
.
Aan de slag
import { useIdentityPlugin } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";
useIdentityPlugin(vsCodePlugin);
Vereisten
Het pakket installeren
Dit pakket is ontworpen voor gebruik met Azure Identity voor JavaScript. Installeer zowel als @azure/identity
dit pakket met behulp van npm
:
$ npm install --save @azure/identity
$ npm install --save-dev @azure/identity-vscode
Ondersteunde omgevingen
Azure Identity-invoegtoepassingen voor JavaScript ondersteunen stabiele (even genummerde) versies van Node.js vanaf v12. Hoewel de invoegtoepassingen in andere knooppuntversies kunnen worden uitgevoerd, wordt er geen ondersteuning gegarandeerd.
@azure/identity-vscode
biedt geen ondersteuning voor browseromgevingen.
Belangrijkste concepten
Als dit de eerste keer @azure/identity
is dat u of de Microsoft identity platform (Azure Active Directory) gebruikt, raden we u aan eerst Gebruiken @azure/identity
met Microsoft Identity Platform te lezen. In dit document krijgt u meer inzicht in het platform en hoe u uw Azure-account correct configureert.
Azure Identity-invoegtoepassingen
@azure/identity
Vanaf versie 2.0.0 bevat de Identity-clientbibliotheek voor JavaScript een api voor invoegtoepassingen. Met dit pakket (@azure/identity-vscode
) wordt een invoegtoepassingsobject geëxporteerd dat u als argument moet doorgeven aan de functie op het hoogste niveau useIdentityPlugin
van het @azure/identity
pakket. Schakel verificatie via de extensie 'Azure-account' voor Visual Studio Code als volgt in:
import { useIdentityPlugin } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";
useIdentityPlugin(vsCodePlugin);
Na het aanroepen useIdentityPlugin
wordt de VisualStudioCodeCredential
van het @azure/identity
pakket ingeschakeld. Als deze invoegtoepassing niet wordt gebruikt, VisualStudioCodeCredential
genereert een CredentialUnavailableError
en is deze niet beschikbaar als onderdeel van DefaultAzureCredential
.
Visual Studio Code-verificatie
VisualStudioCodeCredential
maakt gebruik van de verificatiesessie van de extensie 'Azure-account'. Als u deze referentie wilt gebruiken, moet u zich aanmelden bij uw Azure-account met behulp van de extensie. Hiervoor opent u Visual Studio Code, zorgt u ervoor dat de extensie is geïnstalleerd en meldt u zich aan vanuit het opdrachtpalet met behulp van de optie 'Azure: Aanmelden' om een browservenster te openen en u aan te melden bij Azure. U kunt ook 'Azure: Aanmelden met apparaatcode' selecteren om de apparaatcodestroom te gebruiken.
Nadat u zich hebt aangemeld, moet u mogelijk een abonnement selecteren (bijvoorbeeld als u meerdere Azure-abonnementen hebt) en kunt u het actieve abonnement wijzigen door het menu te gebruiken om de vermelding 'Azure: Abonnementen selecteren' te selecteren.
Voorbeelden
Zodra de invoegtoepassing is geregistreerd, kunt u op een vergelijkbare manier gebruiken VisualStudioCodeCredential
als de andere referentieklassen in @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);
});
U kunt ook gebruiken DefaultAzureCredential
om te verifiëren met behulp van de extensie 'Azure-account' voor Visual Studio Code als deze beschikbaar is:
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);
});
Problemen oplossen
Logboekregistratie
Het inschakelen van logboekregistratie kan helpen bij het ontdekken van nuttige informatie over fouten. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de AZURE_LOG_LEVEL
omgevingsvariabele in op info
. Logboekregistratie kan ook worden ingeschakeld tijdens runtime door aan te roepen setLogLevel
in de @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Volgende stappen
Feedback geven
Als u fouten tegenkomt of suggesties hebt, opent u een probleem.
Bijdragen
Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de handleiding voor bijdragen voor meer informatie over het bouwen en testen van de code.
Azure SDK for JavaScript