Dela via


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

Kommunikation med Microsoft Azure Cloud Services (utökad support) sker med hjälp av HTTPS-protokollet (Hypertext Transfer Protocol Secure). I den här artikeln beskrivs 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 av Cloud Services-resursen (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.

Kommentar

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 40-siffrig hexadecimal sträng).

  3. I projektets tjänstkonfigurationsfil (.cscfg) lägger du till tumavtrycket för certifikatet till den roll 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 filen tjänstdefinition (.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 för bara 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 skiljer sig åt beroende på hur molntjänsten distribuerades. Dessa instruktioner visas på följande flikar. Varje flik representerar en annan distributionsmetod.

Innan du fortsätter kan du läsa 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 cloud service-till-molntjänsten utökad support med ARM-mall och följ steg 7 till och med 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 molntjänsten.

      Kommentar

      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. På sidan Uppdatera molntjänst gör du följande ändringar på fliken Grundläggande :

    1. I fältet 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. För fältet Ladda upp en tjänstdefinition (.csdef) (och filen ServiceDefinition.csdef ) upprepar du underproceduren igen.

  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 hittas i det valda nyckelvalvet visar det angivna certifikatet statusen Hittades.

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

När du har ändrat konfigurationen 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.