Dela via


Hantera autentisering och auktorisering för Playwright Workspaces

I den här artikeln får du lära dig hur du hanterar autentisering och auktorisering för Playwright Workspaces. Autentisering krävs för att köra Playwright-tester på molnbaserade webbläsare.

Som standard används Microsoft Entra-ID för autentisering. Den här metoden är säkrare och är den rekommenderade autentiseringsmetoden. Du kan inte inaktivera autentisering med Microsoft Entra-ID. Du kan dock också använda åtkomsttoken för att autentisera och auktorisera.

Bakgrund

Playwright Workspaces bygger på ramverket för dramatiker med öppen källkod. Den kör Playwright-tester i molnbaserade webbläsare.

Om du vill använda tjänsten måste klienten autentisera med tjänsten för att få åtkomst till webbläsarna. Tjänsten erbjuder två autentiseringsmetoder: Microsoft Entra-ID och åtkomsttoken.

Microsoft Entra-ID använder dina Azure-autentiseringsuppgifter och kräver en inloggning till ditt Azure-konto för säker åtkomst. Du kan också generera en åtkomsttoken från din Playwright-arbetsyta och använda den i konfigurationen. Vi rekommenderar dock starkt Microsoft Entra-ID för autentisering på grund av den förbättrade säkerheten. Åtkomsttoken fungerar, även om de är praktiska, som långlivade lösenord och är mer mottagliga för att komprometteras.

Aktivera autentisering med hjälp av åtkomsttoken

Som standard använder Playwright Workspaces Microsoft Entra-ID för autentisering, vilket är den rekommenderade metoden. Även om åtkomsttokenautentisering stöds är den inaktiverad som standard eftersom den är mindre säker. Om du vill använda åtkomsttoken måste du uttryckligen aktivera det här alternativet för din arbetsyta.

Försiktighet

Åtkomsttoken för arbetsytan liknar ett lösenord för din Playwright-arbetsyta. Var alltid noga med att skydda dina åtkomsttoken. Undvik att distribuera åtkomsttoken till andra användare, hårdkoda dem eller spara dem var som helst i oformaterad text som är tillgänglig för andra. Återkalla och återskapa dina token om du tror att de har komprometterats.

Så här aktiverar du autentisering med hjälp av åtkomsttoken:

  1. Logga in på Azure-portalen med ditt Azure-konto och gå till din arbetsyta.

  2. I avsnittet Inställningar väljer du Åtkomsthantering.

  3. Markera kryssrutan för Playwright Service-åtkomsttoken för att aktivera den.

Skärmbild som visar hur du aktiverar autentisering med hjälp av åtkomsttoken.

Försiktighet

Autentisering med åtkomsttoken är mindre säkert. Lär dig hur du hanterar åtkomsttoken

Konfigurera autentisering med hjälp av åtkomsttoken

  1. När du kör testerna aktiverar du autentisering av åtkomsttoken i filen i konfigurationen playwright.service.config.ts .

    import { createAzurePlaywrightConfig, ServiceAuth } from '@azure/playwright';
    
    /* Learn more about service configuration at https://aka.ms/pww/docs/config */
    export default defineConfig(config, createAzurePlaywrightConfig( config, {
        serviceAuthType: ServiceAuth.ACCESS_TOKEN
    }));
    
  1. När du kör testerna aktiverar du autentisering av åtkomsttoken i installationsfilen.

    using Azure.Developer.Playwright.NUnit;
    using Azure.Developer.Playwright;
    using Azure.Identity;
    using System.Runtime.InteropServices;
    using System;
    
    namespace PlaywrightService.SampleTests; // Remember to change this as per your project namespace
    
    [SetUpFixture]
    public class PlaywrightServiceNUnitSetup : PlaywrightServiceBrowserNUnit
    {
        public PlaywrightServiceNUnitSetup() : base(
            credential: new DefaultAzureCredential(),
            options: new PlaywrightServiceBrowserClientOptions()
            {
                ServiceAuth = ServiceAuthType.AccessToken
            }
        )
        {
            // no-op
        }
    }
    
  1. Skapa åtkomsttoken.

    Följ stegen för att skapa en åtkomsttoken. Kopiera värdet för den åtkomsttoken som genererats.

Konfigurera din miljö.

Konfigurera miljön genom att konfigurera PLAYWRIGHT_SERVICE_ACCESS_TOKEN miljövariabeln med det värde som du fick i föregående steg. Se till att den här miljövariabeln är tillgänglig i konfigurationen där du kör tester.

Vi rekommenderar att du använder modulen dotenv för att hantera din miljö. Med dotenvdefinierar du dina miljövariabler i .env filen.

  1. Lägg till modulen i dotenv projektet:

    npm i --save-dev dotenv
    
  2. Skapa en .env fil tillsammans med playwright.config.ts filen i ditt Playwright-projekt:

    PLAYWRIGHT_SERVICE_ACCESS_TOKEN={MY-ACCESS-TOKEN}
    

    Ersätt {MY-ACCESS-TOKEN} textplatshållaren med det värde som du kopierade tidigare.

Konfigurera miljön genom att konfigurera PLAYWRIGHT_SERVICE_ACCESS_TOKEN miljövariabeln med det värde som du fick i föregående steg. Se till att den här miljövariabeln är tillgänglig i konfigurationen där du kör tester.

Köra tester på tjänsten

Kör Playwright-tester mot molnbaserade webbläsare med den konfiguration som du skapade ovan.

npx playwright test --config=playwright.service.config.ts --workers=20
dotnet test -- NUnit.NumberOfTestWorkers=20