Transport Layer Security (TLS) plannen en implementeren voor toepassingen, waaronder Azure App Service en API Management

Voltooid

Transport Layer Security (TLS) is een cryptografisch protocol dat is ontworpen om communicatie via netwerken te beveiligen door versleuteling, verificatie en gegevensintegriteit te bieden. Het werkt door een veilige handshake tot stand te brengen tussen een client en een server, het onderhandelen over coderingssuites en het valideren van certificaten die zijn uitgegeven door vertrouwde certificeringsinstanties. Dit proces zorgt ervoor dat gevoelige informatie, zoals referenties en toepassingsgegevens, wordt verzonden in een versleuteld formulier, waardoor deze tijdens de overdracht wordt beschermd tegen onderschepping of manipulatie. TLS is ontwikkeld door meerdere versies, waarbij TLS 1.2 en TLS 1.3 sterkere versleuteling, snellere handshakes en verbeterde privacy bieden in vergelijking met eerdere iteraties.

In de context van Azure speelt TLS een cruciale rol bij het beveiligen van gegevens in services zoals App Service, API Management, Azure Storage en SQL Database. Azure dwingt TLS af voor alle verbindingen om versleuteling in transit te garanderen, om risico's zoals man-in-the-middle-aanvallen te beperken. Moderne TLS-versies (1.2 of hoger) zijn vereist. Azure is afgestemd op de beveiligingsstandaarden van de branche en biedt functies zoals Perfect Forward Secrecy en geverifieerde versleuteling, die de tolerantie tegen veranderende bedreigingen verbeteren. Nieuwere versies van TLS beschermen niet alleen klantgegevens, maar zorgen ook voor naleving van wettelijke vereisten, waardoor TLS een fundamenteel onderdeel van het beveiligingspostuur van Azure is.

Wat Transport Layer Security doet voor uw toepassingen

Transport Layer Security (TLS) versleutelt gegevens die tussen clients en servers worden verzonden, waardoor afluisteren en knoeien wordt voorkomen. Wanneer een gebruiker verbinding maakt met uw webtoepassing of API, maakt TLS een versleutelde tunnel die gevoelige informatie, zoals verificatietokens, persoonlijke gegevens en zakelijke transacties, beveiligt tegen onderschepping.

Moderne organisaties zijn afhankelijk van TLS voor:

  • Voldoen aan wettelijke vereisten: standaarden zoals PCI DSS, HIPAA en andere standaarden vereisen versleuteling voor gegevens die worden overgedragen.
  • Bouw een vertrouwensrelatie van de klant: beveiligingsindicatoren en certificaatwaarschuwingen voor browsers bouwen rechtstreeks vertrouwen van gebruikers op.
  • Gegevensschendingen voorkomen: niet-versleutelde verbindingen maken referenties, sessietokens en zakelijke gegevens beschikbaar voor netwerkaanvallers.

TLS vervangt het afgeschafte SSL-protocol (Secure Sockets Layer). Configureer altijd services voor het gebruik van TLS 1.2 of hoger, waarbij TLS 1.3 wordt aanbevolen voor optimale beveiliging en prestaties.

Waarom TLS belangrijk is in Azure

Azure-services verwerken dagelijks miljoenen klantaanvragen in wereldwijde regio's. TLS biedt drie kritieke beveiligingen:

  • Verificatie: Certificaten bewijzen uw service-identiteit, waardoor man-in-the-middle-aanvallen worden voorkomen waarbij aanvallers uw eindpunten imiteren.
  • Vertrouwelijkheid: Versleuteling zorgt ervoor dat alleen geautoriseerde partijen verzonden gegevens kunnen lezen, zelfs wanneer verkeer niet-vertrouwde netwerken overschrijdt.
  • Integriteit: cryptografische handtekeningen detecteren manipulatie met gegevens tijdens de verzending.

Zonder TLS kan een aanvaller in hetzelfde netwerk als uw gebruikers aanmeldingsreferenties, API-sleutels of klantrecords vastleggen. Azure bevat ingebouwde TLS-ondersteuning voor platformservices, maar u moet minimale versies en certificaatbeleid configureren om te voldoen aan uw beveiligingsvereisten.

Belangrijk

TLS beveiligt alleen gegevens tijdens overdracht. U moet rustende gegevens afzonderlijk versleutelen gebruikmakend van Azure Storage encryption, transparante gegevensversleuteling voor databases of Azure Disk Encryption.

TLS configureren voor Azure App Service

In uw toepassingscode hebt u toegang tot de openbare of persoonlijke certificaten die u aan Azure App Service toevoegt. Uw app-code kan fungeren als een client en toegang krijgen tot een externe service waarvoor certificaatverificatie is vereist. Het kan ook nodig zijn om cryptografische taken uit te voeren.

Deze benadering voor het gebruik van certificaten in uw code maakt gebruik van de TLS-functionaliteit (Transport Layer Security) in App Service. Hiervoor moet uw app zich in de Basic-laag of hoger bevinden. Als uw app zich in de laag Gratis of Gedeeld bevindt, kunt u het certificaatbestand opnemen in uw app-opslagplaats.

Wanneer u App Service uw SSL-certificaten (TLS/Secure Sockets Layer) laat beheren, kunt u de certificaten en uw toepassingscode afzonderlijk onderhouden en uw gevoelige gegevens beveiligen.

Azure App Service biedt beheerde TLS-beëindiging met automatische certificaatvernieuwing. U beheert de minimale TLS-versie en kunt HTTPS afdwingen voor alle verbindingen.

Minimale TLS-versie afdwingen

  1. Navigeer in Azure Portal naar uw App Service-resource.
  2. Selecteer onder Instellingen de optie Configuratie.
  3. Selecteer het tabblad Algemene instellingen.
  4. Stel minimale TLS-versie in op 1.2 of 1.3 (aanbevolen 1.3).
  5. Selecteer Opslaan om de wijziging toe te passen

Clients die verbinding proberen te maken met oudere TLS-versies, ontvangen een verbindingsfout, waardoor verouderde systemen geen zwakke cryptografie kunnen gebruiken.

HTTPS-verbindingen vereisen

  1. Selecteer Configuratie in uw App Service-resource onder Instellingen.
  2. Selecteer het tabblad Algemene instellingen.
  3. Stel Alleen HTTPS in op Aan.
  4. Selecteer Opslaan.

Azure stuurt HTTP-aanvragen automatisch om naar HTTPS, zodat al het verkeer versleutelde verbindingen gebruikt. Versleutelde verbindingen elimineren waarschuwingen voor gemengde inhoud in browsers en vereenvoudigen nalevingscontroles.

Een aangepast domeincertificaat toevoegen

App Service-apps ontvangen een gratis *.azurewebsites.net certificaat. Voor productieworkloads die gebruikmaken van aangepaste domeinen:

  1. Koop of importeer een certificaat dat overeenkomt met uw domeinnaam.
  2. Selecteer certificaten onder Instellingen in uw App Service.
  3. Selecteer Certificaat toevoegen en volg de wizard om uw certificaat te uploaden of een door App Service beheerd certificaat te maken.
  4. Bind het certificaat aan uw aangepaste domein onder Aangepaste domeinen.

Beheerde certificaten worden automatisch verlengd voordat ze verlopen. Voor privécertificaten is handmatig vernieuwen en opnieuw laden vereist.

TLS configureren voor Azure API Management

Azure API Management bevindt zich tussen clients en back-end-API's, het verwerken van verificatie, snelheidsbeperking en transformatie. U configureert TLS op zowel de gatewaylaag (clientgericht) als de back-endlaag (service-naar-service).

Minimale TLS-versie voor de gateway instellen

  1. Open uw API Management-exemplaar in Azure Portal.
  2. Onder Beveiliging selecteert u Protocollen + coderingen.
  3. Schakel de selectievakjes voor SSL 3.0, TLS 1.0 en TLS 1.1 uit.
  4. Zorg ervoor dat TLS 1.2 is ingeschakeld (TLS 1.3-ondersteuning is afhankelijk van uw servicelaag).
  5. Selecteer Opslaan.

Als u een minimale TLS-versie instelt, kunnen clients niet onderhandelen over zwakke protocolversies. Test met uw API-consumenten voordat u TLS 1.1 uitschakelt als u oudere mobiele apps of verouderde systemen ondersteunt.

HTTPS afdwingen voor API-eindpunten

  1. Navigeer naar API's in uw API Management-exemplaar.
  2. Selecteer de API die u wilt beveiligen.
  3. Zoek onder Instellingen de url-schemaoptie .
  4. Selecteer alleen HTTPS.
  5. Selecteer Opslaan.

API Management weigert HTTP-aanvragen met een 403 Verboden antwoord, bescherming tegen onbedoelde blootstelling van niet-versleutelde eindpunten.

TLS-validatie voor back-end configureren

Wanneer API Management back-endservices aanroept, controleert u of deze verbindingen ook TLS gebruiken:

  1. Selecteer Ontwerp in uw API en kies een bewerking.
  2. Selecteer in de sectie Back-end het potloodpictogram dat u wilt bewerken.
  3. Schakel De certificaatketen valideren in en valideer de certificaatnaam.
  4. Upload vertrouwde basiscertificaten als uw back-end gebruikmaakt van privé- of zelfondertekende certificaten.

Controleer de ondersteunde verbindingen om te voorkomen dat API Management ongeldige of verlopen certificaten van back-endservices accepteert en end-to-end-versleuteling onderhoudt.

Aanbeveling

Gebruik Azure Key Vault om certificaten op te slaan en te roteren voor Zowel App Service als API Management. Een gecentraliseerd levenscyclusbeheerproces voor certificaten vereenvoudigt nalevingsrapportage.

Uw TLS-configuratie plannen

Voordat u TLS-wijzigingen implementeert in productie:

  • Bestaande clients controleren: identificeer systemen met TLS 1.0 of 1.1 en plan hun upgrades.
  • Certificaatvernieuwingen testen: controleer of automatische verlenging werkt voor beheerde certificaten en documenteer handmatige verlengingsprocedures voor privécertificaten.
  • Bewaking configureren: Azure Monitor-waarschuwingen instellen voor TLS-handshakefouten en waarschuwingen voor het verlopen van certificaten.
  • Documentnalevingstoewijzingen: noteer welke TLS-instellingen voldoen aan specifieke wettelijke vereisten voor audittrails.

Als u oudere TLS-versies uitschakelt, kan de compatibiliteit met verouderde clients worden verbroken. Coördineer met eigenaren van toepassingen en plan een gefaseerde implementatie met duidelijke communicatie met API-consumenten.

Belangrijke punten

  • Configureer minimaal TLS-versie naar 1.2 of hoger op alle Azure-services om zwakke cryptografieproblemen te voorkomen.
  • Dwing enkel HTTPS-verbindingen af in App Service en API Management om niet-versleuteld verkeer uit te schakelen.
  • Schakel validatie van back-endcertificaten in API Management in om end-to-end-versleuteling tussen servicegrenzen te behouden.
  • Gebruik Azure Key Vault voor gecentraliseerd certificaatbeheer en geautomatiseerde vernieuwingswerkstromen.
  • Test tls-configuratiewijzigingen in faseringsomgevingen vóór de productie-implementatie om clientcompatibiliteitsproblemen te identificeren.
  • Controleer uw bestaande Exemplaren van Azure App Service en API Management om services te identificeren die TLS 1.0 of 1.1 nog steeds toestaan.
  • Maak een Azure Key Vault en migreer certificaatopslag van handmatige uploads naar gecentraliseerd beheer op basis van een kluis.
  • Configureer Azure Monitor-waarschuwingen voor het verlopen van certificaten (30 dagen vóór de vervaldatum) en TLS-handshakefouten om serviceonderbrekingen te voorkomen.