Dela via


Aktivera HTTPS-kommunikation i Azure Cloud Services (utökad support)

Kommunikation med Microsoft Azure Cloud Services (utökat stöd) görs med hjälp av HTTPS-protokollet (Hypertext Transfer Protocol Secure). Den här artikeln beskriver hur du aktiverar HTTPS-kommunikation för Cloud Services (utökad support).

Förutsättningar

Allmänna steg för projektdistribution

De allmänna stegen för att distribuera ett Cloud Services-projekt (utökad support) till Azure är följande:

  1. Förbered certifikatet.

  2. Konfigurera projektet.

  3. Paketera projektfilen i tjänstdefinitionsfilerna (.csdef), tjänstkonfigurationen (.cscfg) och tjänstpaketfilerna (.cspkg) för molntjänsten.

  4. Ändra konfigurationen för resursen Cloud Services (utökad support) om det behövs. Du kan till exempel göra någon av följande ändringar:

    1. Uppdatera paket-URL:en.
    2. Konfigurera URL-inställningen.
    3. Uppdatera inställningen för operativsystemhemligheter.
  5. Distribuera och uppdatera det nya projektet till Azure.

Obs!

Projektet kan distribueras via flera olika metoder, till exempel med hjälp av följande verktyg:

Oavsett distributionsmetod är de allmänna distributionsstegen desamma.

De två första stegen är nödvändiga för alla distributionsmetoder. De här stegen beskrivs i avsnittet Kodändringar . De återstående stegen är också viktiga, men de kräver inte alltid manuella användaråtgärder. Stegen kan till exempel utföras automatiskt av ett verktyg som Visual Studio. De tre sista stegen beskrivs i avsnittet Konfigurationsändringar .

Kodändringar

Utför följande steg för att göra kodändringarna för att förbereda certifikatet och konfigurera projektet:

  1. Följ anvisningarna för att ladda upp ett certifikat till nyckelvalvet via steg 6.

  2. Skriv ned tumavtrycket för certifikatet (en hexadecimal sträng med 40 siffror).

  3. I projektets tjänstkonfigurationsfil (.cscfg) lägger du till certifikatets tumavtryck i rollen där du vill använda certifikatet. Om du till exempel vill använda certifikatet som SSL-certifikat för att kommunicera med en WebRole kan du lägga till XML-kod som liknar följande kodfragment för WebRole1 som det första underordnade rotelementet ServiceConfiguration :

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

    Du kan anpassa namnet på certifikatet, men det måste matcha certifikatnamnet som används i tjänstdefinitionsfilen (.csdef).

  4. Lägg till följande element i tjänstdefinitionsfilen (.csdef).

    Överordnad XPath Element att lägga till Attribut som ska användas
    /ServiceDefinition/WebRole/Sites/Site/Bindings Binding name, endpointName
    /ServiceDefinition/WebRole/Endpoints InputEndpoint name, protocol, port, certificate
    /ServiceDefinition/WebRole Certificates/Certificate name, storeLocation, storeName, permissionLevel

    Elementet Certificates måste läggas till direkt efter den avslutande Endpoints taggen. Den innehåller inga attribut. Den innehåller endast underordnade Certificate element.

    Din tjänstdefinitionsfil kan till exempel likna följande XML-kod:

    <?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>
    

    I det här exemplet ändras tjänstdefinitionsfilen för att binda en indataslutpunkt HttpsIn för för HTTPS-protokollet på port 443. Det använder certifikatet Certificate1 för ett arkiv som har ett namn på My och en plats LocalMachine för endast en begränsad eller förhöjd behörighetsnivå. Certifikatnamnen i elementen InputEndpoint och Certificate matchar varandra. De matchar även certifikatnamnet som användes i tjänstkonfigurationsfilen (.cscfg) från föregående steg.

Konfigurationsändringar

Instruktionerna för att ändra molntjänstkonfigurationen varierar beroende på hur molntjänsten distribuerades. De här anvisningarna visas på följande flikar. Varje flik representerar en annan distributionsmetod.

Innan du fortsätter läser du Distribuera en Azure-Cloud Services (utökad support) med hjälp av Azure Portal. Följ sedan de här stegen för att göra rätt konfigurationsändringar via Azure Portal:

  1. Gå till blogginlägget med titeln Manuell migrering från den klassiska mallen Cloud Service till Cloud Service Extended Support med ARM och följ steg 7 till 9. De här anvisningarna visar hur du gör följande:

    • Paketera projektet.

    • Ladda upp de genererade tjänstpaketfilerna (<project-name.cspkg>) och cloud service configuration (ServiceConfiguration.Cloud.cscfg) till en lagringskontocontainer för din molntjänst.

      Obs!

      Du måste också ladda upp tjänstdefinitionsfilen (ServiceDefinition.csdef) med hjälp av samma process som beskrivs för de andra två filerna.

    • Generera en URL för signatur för delad åtkomst (SAS) för var och en av de uppladdade filerna.

  2. I Azure Portal går du tillbaka till sidan Översikt för molntjänsten och väljer sedan Uppdatera.

  3. Gör följande ändringar på fliken Grundläggande på sidan Uppdatera molntjänst:

    1. I fältet Package/configuration/service definition location (Plats för paket/konfiguration/tjänstdefinition ) väljer du Från blob.

    2. I fältet Ladda upp ett paket (.cspkg, .zip) följer du dessa steg:

      1. Välj länken Bläddra .
      2. Välj det lagringskonto och den container som du laddade upp filer till.
      3. På containersidan väljer du motsvarande fil (i det här fallet <project-name.cspkg>) och väljer sedan knappen Välj.
    3. För fältet Ladda upp en konfiguration (.cscfg) (och filen ServiceConfiguration.Cloud.cscfg ) upprepar du underproceduren som beskrivs i föregående steg.

    4. Upprepa underproceduren igen för fältet Ladda upp en tjänstdefinition (.csdef) (och filen ServiceDefinition.csdef ).

  4. Välj fliken Konfiguration .

  5. I fältet Nyckelvalv väljer du det nyckelvalv där du laddade upp certifikatet (tidigare i avsnittet Kodändringar ). När certifikatet har hittats i det valda nyckelvalvet visar certifikatet i listan statusen Hittades.

  6. Om du vill distribuera det nyligen konfigurerade projektet väljer du knappen Uppdatera .

När du har gjort konfigurationsändringarna kan kunderna kommunicera med din webbplats för molntjänster med hjälp av HTTPS-protokollet. Om certifikatet är självsignerat kan webbläsaren rapportera en varning om att certifikatet inte är säkert, men webbläsaren blockerar inte anslutningen.

Kontakta oss för att få hjälp

Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.