Zabezpečené koncové body zátěžového testu s využitím zátěžového testování Azure

V tomto článku se dozvíte, jak používat Azure Load Testing s koncovými body aplikace, které vyžadují ověřování. V závislosti na implementaci aplikace můžete k ověřování požadavků použít přístupový token, přihlašovací údaje uživatele nebo klientské certifikáty.

Azure Load Testing podporuje následující možnosti pro ověřené koncové body:

Požadavky

Ověřování pomocí sdíleného tajného klíče nebo přihlašovacích údajů

V tomto scénáři koncový bod aplikace vyžaduje, abyste k ověření použili sdílený tajný klíč, jako je přístupový token, klíč rozhraní API nebo přihlašovací údaje uživatele.

Následující diagram ukazuje, jak použít sdílené tajné kódy nebo přihlašovací údaje k ověření pomocí koncového bodu aplikace v zátěžovém testu.

Diagram that shows how to use shared-secret authentication with Azure Load Testing.

Tok pro ověřování pomocí sdíleného tajného kódu nebo přihlašovacích údajů uživatele je:

  1. Bezpečně uložte tajný klíč nebo přihlašovací údaje, například ve službě Azure Key Vault nebo v úložišti tajných kódů CI/CD.
  2. Odkazujte na tajný klíč v konfiguraci zátěžového testu.
  3. Ve skriptu JMeter načtěte hodnotu tajného GetSecret kódu pomocí funkce a předejte hodnotu tajného kódu do požadavku aplikace.

Bezpečné uložení tajného kódu

Abyste se vyhnuli ukládání a zveřejnění informací o zabezpečení ve skriptu JMeter, můžete bezpečně ukládat tajné kódy ve službě Azure Key Vault nebo v úložišti tajných kódů CI/CD.

Informace o zabezpečení můžete do úložiště tajných kódů přidat dvěma způsoby:

Odkazování na tajný klíč v konfiguraci zátěžového testu

Než budete moct načíst hodnotu tajného kódu v testovacím skriptu JMeter, musíte na tajný kód odkazovat v konfiguraci zátěžového testu.

Na webu Azure Portal můžete odkazovat na tajné kódy uložené ve službě Azure Key Vault. Přidání a konfigurace tajného kódu zátěžového testu na webu Azure Portal:

  1. Na webu Azure Portal přejděte k vašemu prostředku zátěžového testování a výběrem možnosti Testy zobrazte seznam zátěžových testů.

  2. V seznamu vyberte svůj test a pak vyberte Upravit a upravte konfiguraci zátěžového testu.

    Screenshot that shows how to edit a load test in the Azure portal.

  3. Na kartě Parametry zadejte podrobnosti tajného klíče.

    Pole Hodnota
    Název Název tajného klíče. Tento název zadáte funkci, GetSecret která načte hodnotu tajného kódu ve skriptu JMeter.
    Hodnota Odpovídá identifikátoru tajného klíče služby Azure Key Vault.

    Screenshot that shows how to add secrets to a load test in the Azure portal.

  4. Výběrem možnosti Použít uložte změny konfigurace zátěžového testu.

Načtení a použití hodnoty tajného kódu ve skriptu JMeter

Teď můžete načíst hodnotu tajného kódu ve skriptu JMeter pomocí GetSecret vlastní funkce a předat ji do požadavku aplikace. Například k předání tokenu OAuth do požadavku použijte hlavičku Authorization HTTP.

  1. Vytvořte uživatelem definovanou proměnnou, která načte hodnotu tajného GetSecret kódu pomocí vlastní funkce:

    Funkce GetSecret abstrahuje načtení hodnoty z Azure Key Vaultu nebo úložiště tajných kódů CI/CD.

    Screenshot that shows how to add a user-defined variable that uses the GetSecret function in JMeter.

  2. Aktualizujte komponentu sampleru JMeter tak, aby předala tajný kód v požadavku.

    Pokud například chcete poskytnout přístupový token OAuth2, nakonfigurujete hlavičku Authorization HTTP přidáním HTTP Header Managerpříkazu :

    Screenshot that shows how to add an authorization header to a request in JMeter.

Ověřování pomocí klientských certifikátů

V tomto scénáři koncový bod aplikace vyžaduje, abyste k ověření použili klientský certifikát. Zátěžové testování Azure podporuje typ certifikátů PKCS12 (Public Key Certificate Standard). V zátěžovém testu můžete použít pouze jeden klientský certifikát.

Následující diagram ukazuje, jak použít klientský certifikát k ověření pomocí koncového bodu aplikace v zátěžovém testu.

Diagram that shows how to use client-certificate authentication with Azure Load Testing.

Tok ověřování pomocí klientských certifikátů je následující:

  1. Bezpečně uložte klientský certifikát ve službě Azure Key Vault.
  2. Odkazujte na certifikát v konfiguraci zátěžového testu.
  3. Azure Load Testing transparentně předává certifikát všem žádostem aplikace v JMeteru.

Uložení klientského certifikátu ve službě Azure Key Vault

Aby se zabránilo ukládání a zveřejnění, klientský certifikát společně se skriptem JMeter uložíte certifikát ve službě Azure Key Vault.

Postupujte podle kroků v části Import certifikátu a uložte certifikát ve službě Azure Key Vault.

Důležité

Azure Load Testing podporuje pouze certifikáty PKCS12. Nahrajte klientský certifikát ve formátu souboru PFX.

Udělení přístupu k trezoru klíčů Azure

Při ukládání tajných kódů nebo certifikátů zátěžového testu ve službě Azure Key Vault používá váš prostředek zátěžového testování spravovanou identitu pro přístup k trezoru klíčů. Po konfiguraci identity správy musíte udělit spravovanou identitu prostředku zátěžového testování, abyste mohli číst tyto hodnoty z trezoru klíčů.

Udělení oprávnění prostředků zátěžového testování Azure ke čtení tajných kódů nebo certifikátů z trezoru klíčů Azure:

  1. Na webu Azure Portal přejděte k prostředku služby Azure Key Vault.

    Pokud trezor klíčů nemáte, vytvořte ho podle pokynů v rychlém startu pro Azure Key Vault.

  2. V levém podokně vyberte Zásady přístupu a pak vyberte + Vytvořit.

  3. Na kartě Oprávnění v části Oprávnění vyberte Získat a pak vyberte Další.

    Poznámka:

    Azure Load Testing načte certifikáty jako tajný klíč , aby byl k dispozici privátní klíč certifikátu.

  4. Na kartě Objekt zabezpečení vyhledejte a vyberte spravovanou identitu prostředku zátěžového testování a pak vyberte Další.

    Pokud používáte spravovanou identitu přiřazenou systémem, název spravované identity odpovídá názvu spravované identity prostředku zátěžového testování Azure.

  5. Znovu vyberte Další .

    Když se test spustí, spravovaná identita přidružená k vašemu prostředku zátěžového testování teď může číst tajné kódy nebo certifikáty pro zátěžový test z vašeho trezoru klíčů.

Odkazování na certifikát v konfiguraci zátěžového testu

Pokud chcete klientský certifikát předat žádostem o aplikaci, musíte na certifikát odkazovat v konfiguraci zátěžového testu.

Přidání klientského certifikátu do zátěžového testu na webu Azure Portal:

  1. Na webu Azure Portal přejděte k vašemu prostředku zátěžového testování. Pokud ještě nemáte zátěžový test, vytvořte nový zátěžový test pomocí skriptu JMeter.

  2. V levém podokně vyberte Testy a zobrazte seznam zátěžových testů.

  3. V seznamu vyberte svůj test a pak vyberte Upravit a upravte konfiguraci zátěžového testu.

    Screenshot that shows how to edit a load test in the Azure portal.

  4. Na kartě Parametry zadejte podrobnosti o certifikátu.

    Pole Hodnota
    Název Název certifikátu.
    Hodnota Odpovídá identifikátoru tajného klíče služby Azure Key Vault certifikátu.

    Screenshot that shows how to add a certificate to a load test in the Azure portal.

  5. Výběrem možnosti Použít uložte změny konfigurace zátěžového testu.

Když spustíte zátěžový test, Azure Load Testing načte klientský certifikát ze služby Azure Key Vault a automaticky ho vloží do každého webového požadavku JMeter.