Delen via


HTTPS-communicatie inschakelen in Azure Cloud Services (uitgebreide ondersteuning)

Communicatie met Microsoft Azure Cloud Services (uitgebreide ondersteuning) wordt uitgevoerd met behulp van het Https-protocol (Hypertext Transfer Protocol Secure). In dit artikel wordt beschreven hoe u HTTPS-communicatie inschakelt voor Cloud Services (uitgebreide ondersteuning).

Voorwaarden

Algemene stappen voor projectimplementatie

De algemene stappen voor het implementeren van een Cloud Services-project (uitgebreide ondersteuning) in Azure zijn als volgt:

  1. Bereid uw certificaat voor.

  2. Configureer uw project.

  3. Pakket het projectbestand in de servicedefinitiebestanden (.csdef), serviceconfiguratiebestanden (.cscfg) en servicepakketbestanden (.cspkg) van uw cloudservice.

  4. Wijzig indien nodig de configuratie van de cloudservicesresource (uitgebreide ondersteuning). U kunt bijvoorbeeld een van de volgende wijzigingen aanbrengen:

    1. Werk de pakket-URL bij.
    2. Configureer de URL-instelling.
    3. Werk de instelling voor geheimen van het besturingssysteem bij.
  5. Implementeer en werk het nieuwe project bij in Azure.

Notitie

Het project kan worden geïmplementeerd via verschillende methoden, zoals met behulp van de volgende hulpprogramma's:

Ongeacht de implementatiemethode zijn de algemene implementatiestappen hetzelfde.

De eerste twee van deze stappen zijn nodig voor alle implementatiemethoden. Deze stappen worden besproken in de sectie Codewijzigingen . De resterende stappen zijn ook belangrijk, maar vereisen niet altijd handmatige tussenkomst van de gebruiker. De stappen kunnen bijvoorbeeld automatisch worden uitgevoerd door een hulpprogramma zoals Visual Studio. De laatste drie van deze stappen worden besproken in de sectie Configuratiewijzigingen .

Codewijzigingen

Voer de volgende stappen uit om de codewijzigingen aan te brengen om uw certificaat voor te bereiden en uw project te configureren:

  1. Volg de instructies voor het uploaden van een certificaat naar de sleutelkluis via stap 6.

  2. Noteer de vingerafdruk van het certificaat (een hexadecimale tekenreeks van 40 cijfers).

  3. Voeg in het serviceconfiguratiebestand (.cscfg) van uw project de vingerafdruk van het certificaat toe aan de rol waarin u het certificaat wilt gebruiken. Als u bijvoorbeeld het certificaat als SSL-certificaat wilt gebruiken om te communiceren met een WebRole, kunt u XML-code toevoegen die lijkt op het volgende fragment als WebRole1 het eerste onderliggende element van het hoofdelement ServiceConfiguration :

    <Role name="WebRole1">
      <Instances count="1" />
      <Certificates>
        <Certificate
          name="Certificate1"
          thumbprint="0123456789ABCDEF0123456789ABCDEF01234567"
          thumbprintAlgorithm="sha1"
        />
      </Certificates>
    </Role>
    

    U kunt de naam van het certificaat aanpassen, maar moet overeenkomen met de certificaatnaam die wordt gebruikt in het bestand met de servicedefinitie (.csdef).

  4. Voeg in het bestand met de servicedefinitie (.csdef) de volgende elementen toe.

    Bovenliggend XPath Elementen die moeten worden toegevoegd Kenmerken die moeten worden gebruikt
    /ServiceDefinition/WebRole/Sites/Site/Bindings Binding name, endpointName
    /ServiceDefinition/WebRole/Endpoints InputEndpoint naam, protocol, poort, certificaat
    /ServiceDefinition/WebRole Certificates/Certificate name, storeLocation, storeName, permissionLevel

    Het Certificates element moet direct na de afsluitende Endpoints tag worden toegevoegd. Het bevat geen kenmerken. Het bevat alleen onderliggende Certificate elementen.

    Uw servicedefinitiebestand kan bijvoorbeeld lijken op de volgende XML-code:

    <?xml version="1.0" encoding="utf-8"?>
    <ServiceDefinition name="CSESOneWebRoleHTTPS" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6">
      <WebRole name="WebRole1" vmsize="Standard_D1_v2">
        <Sites>
          <Site name="Web">
            <Bindings>
              <Binding name="Endpoint1" endpointName="Endpoint1" />
              <Binding name="HttpsIn" endpointName="HttpsIn" />
            </Bindings>
          </Site>
        </Sites>
        <Endpoints>
          <InputEndpoint name="Endpoint1" protocol="http" port="80" />
          <InputEndpoint name="HttpsIn" protocol="https" port="443" certificate="Certificate1" />
        </Endpoints>
        <Certificates>
          <Certificate name="Certificate1" storeLocation="LocalMachine" storeName="My" permissionLevel="limitedOrElevated" />
        </Certificates>
      </WebRole>
    </ServiceDefinition>
    

    In dit voorbeeld wordt het servicedefinitiebestand gewijzigd om een invoereindpunt HttpsIn voor het HTTPS-protocol te binden op poort 443. Het gebruikt het Certificate1 certificaat voor een archief met een naam en My een locatie voor LocalMachine slechts een beperkt of verhoogd machtigingsniveau. De certificaatnamen in de InputEndpoint en Certificate elementen komen overeen met elkaar. Ze komen ook overeen met de certificaatnaam die is gebruikt in het serviceconfiguratiebestand (.cscfg) uit de vorige stap.

Configuratiewijzigingen

Instructies voor het wijzigen van uw cloudserviceconfiguratie verschillen afhankelijk van de wijze waarop uw cloudservice is geïmplementeerd. Deze instructies worden weergegeven op de volgende tabbladen. Elk tabblad vertegenwoordigt een andere implementatiemethode.

Zie Een Azure Cloud Services (uitgebreide ondersteuning) implementeren met behulp van Azure Portal voordat u verdergaat. Volg vervolgens deze stappen om de juiste configuratiewijzigingen aan te brengen via Azure Portal:

  1. Ga naar het blogbericht met de titel Handmatige migratie van klassieke cloudservice naar uitgebreide ondersteuning voor cloudservices met ARM-sjabloon en volg stap 7 tot en met 9. Deze instructies laten zien hoe u de volgende stappen kunt uitvoeren:

    • Pak het project in.

    • Upload het gegenereerde servicepakket (<project-name.cspkg>) en cloudserviceconfiguratiebestanden (ServiceConfiguration.Cloud.cscfg) naar een opslagaccountcontainer voor uw cloudservice.

      Notitie

      U moet ook het servicedefinitiebestand (ServiceDefinition.csdef) uploaden met behulp van hetzelfde proces dat wordt beschreven voor de andere twee bestanden.

    • Genereer een SAS-URL (Shared Access Signature) voor elk van de geüploade bestanden.

  2. Ga in Azure Portal terug naar de pagina Overzicht van uw cloudservice en selecteer Vervolgens Bijwerken.

  3. Breng op de pagina Cloudservice bijwerken de volgende wijzigingen aan op het tabblad Basisbeginselen :

    1. Selecteer in het veld Locatie van pakket/configuratie/servicedefinitie de optie Uit blob.

    2. Voer in het veld Een pakket uploaden (.cspkg, .zip) de volgende stappen uit:

      1. Selecteer de koppeling Bladeren .
      2. Selecteer het opslagaccount en de container waarnaar u bestanden hebt geüpload.
      3. Selecteer op de containerpagina het bijbehorende bestand (in dit geval project-name.cspkg>) en selecteer vervolgens de knop Selecteren.<
    3. Voor het veld Een configuratie (.cscfg) uploaden (en ServiceConfiguration.Cloud.cscfg-bestand ), herhaalt u de subprocedure die in de vorige stap is beschreven.

    4. Herhaal de subprocedure voor het veld Upload a service definition (.csdef) (en het bestand ServiceDefinition.csdef ).

  4. Selecteer het tabblad Configuration (Configuratie).

  5. Selecteer in het veld Sleutelkluis de sleutelkluis waarin u het certificaat hebt geüpload (eerder in de sectie Codewijzigingen ). Nadat het certificaat is gevonden in de geselecteerde sleutelkluis, wordt in het vermelde certificaat de status Gevonden weergegeven.

  6. Als u het zojuist geconfigureerde project wilt implementeren, selecteert u de knop Bijwerken .

Nadat u de configuratiewijzigingen hebt aangebracht, kunnen klanten communiceren met uw cloudserviceswebsite met behulp van het HTTPS-protocol. Als uw certificaat zelfondertekend is, kan de browser een waarschuwing melden dat het certificaat niet beveiligd is, maar de browser de verbinding niet blokkeert.

Contacteer ons voor hulp

Als u vragen hebt of hulp nodig hebt, maak een ondersteuningsaanvraag of vraag de Azure-communityondersteuning. U kunt ook productfeedback verzenden naar de Azure-feedbackcommunity.