Aracılığıyla paylaş


Azure Cloud Services'de HTTPS iletişimlerini etkinleştirme (genişletilmiş destek)

Microsoft Azure Cloud Services (genişletilmiş destek) ile iletişim, Köprü Metni Aktarım Protokolü Güvenli (HTTPS) protokolü kullanılarak gerçekleştirilir. Bu makalede, Cloud Services için HTTPS iletişimin nasıl etkinleştirileceği açıklanır (genişletilmiş destek).

Önkoşullar

Proje dağıtımı için genel adımlar

Azure'a Cloud Services (genişletilmiş destek) projesi dağıtmaya yönelik genel adımlar şunlardır:

  1. Sertifikanızı hazırlayın.

  2. Projenizi yapılandırın.

  3. Proje dosyasını bulut hizmetinizin hizmet tanımı (.csdef), hizmet yapılandırması (.cscfg) ve hizmet paketi (.cspkg) dosyalarına paketleyin.

  4. Gerekirse Cloud Services (genişletilmiş destek) kaynağının yapılandırmasını değiştirin. Örneğin, aşağıdaki değişikliklerden herhangi birini yapabilirsiniz:

    1. Paket URL'sini güncelleştirin.
    2. URL ayarını yapılandırın.
    3. İşletim sistemi gizli dizileri ayarını güncelleştirin.
  5. Yeni projeyi Azure'a dağıtın ve güncelleştirin.

Not

Proje, aşağıdaki araçlar kullanılarak gibi birkaç farklı yöntemle dağıtılabilir:

Dağıtım yöntemi ne olursa olsun, genel dağıtım adımları aynıdır.

Bu adımlardan ilk ikisi tüm dağıtım yöntemleri için gereklidir. Bu adımlar Kod değişiklikleri bölümünde ele alınmaktadır. Kalan adımlar da önemlidir, ancak her zaman el ile kullanıcı müdahalesi gerektirmez. Örneğin, adımlar Visual Studio gibi bir araç tarafından otomatik olarak yapılabilir. Bu adımların son üçü Yapılandırma değişiklikleri bölümünde ele alınmaktadır.

Kod değişiklikleri

Sertifikanızı hazırlamak ve projenizi yapılandırmak üzere kod değişiklikleri yapmak için aşağıdaki adımları izleyin:

  1. 6. adımda anahtar kasasına sertifika yüklemek için yönergeleri izleyin.

  2. Sertifikanın parmak izini (40 basamaklı onaltılık dize) not edin.

  3. Projenizin hizmet yapılandırması (.cscfg) dosyasında sertifika parmak izini sertifikayı kullanmak istediğiniz role ekleyin. Örneğin, bir WebRole ile iletişim kurmak için sertifikayı SSL sertifikası olarak kullanmak istiyorsanız, kök ServiceConfiguration öğenin ilk alt öğesi olarak aşağıdaki WebRole1 kod parçacığına benzeyen XML kodu ekleyebilirsiniz:

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

    Sertifikanın adını özelleştirebilirsiniz, ancak hizmet tanımı (.csdef) dosyasında kullanılan sertifika adıyla eşleşmelidir.

  4. Hizmet tanımı (.csdef) dosyasına aşağıdaki öğeleri ekleyin.

    Üst XPath Eklenecek öğeler Kullanılacak öznitelikler
    /ServiceDefinition/WebRole/Sites/Site/Bindings Binding name, endpointName
    /ServiceDefinition/WebRole/Endpoints InputEndpoint ad, protokol, bağlantı noktası, sertifika
    /ServiceDefinition/WebRole Certificates/Certificate name, storeLocation, storeName, permissionLevel

    öğesinin Certificates kapanış Endpoints etiketinden hemen sonra eklenmesi gerekir. Herhangi bir öznitelik içermez. Yalnızca alt Certificate öğeleri içerir.

    Örneğin, hizmet tanımı dosyanız aşağıdaki XML koduna benzeyebilir:

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

    Bu örnekte hizmet tanımı dosyası, 443 numaralı bağlantı noktasında HTTPS protokolü için giriş uç noktasını HttpsIn bağlamak üzere değiştirilmiştir. Yalnızca sınırlı veya yükseltilmiş izin düzeyi için adına My ve konumuna LocalMachine sahip bir deponun sertifikasını kullanırCertificate1. ve Certificate öğelerindeki InputEndpoint sertifika adları birbiriyle eşleşir. Ayrıca, önceki adımda hizmet yapılandırması (.cscfg) dosyasında kullanılan sertifika adıyla da eşleşir.

Yapılandırma değişiklikleri

Bulut hizmeti yapılandırmanızı değiştirme yönergeleri, bulut hizmetinizin dağıtılma şekline göre farklılık gösterir. Bu yönergeler aşağıdaki sekmelerde gösterilir. Her sekme farklı bir dağıtım yöntemini temsil eder.

Devam etmeden önce bkz. Azure portal kullanarak Azure Cloud Services (genişletilmiş destek) dağıtma. Ardından, Azure portal aracılığıyla doğru yapılandırma değişikliklerini yapmak için şu adımları izleyin:

  1. ARM şablonuyla klasik Bulut Hizmetinden Bulut Hizmeti Genişletilmiş Desteği'ne el ile geçiş başlıklı blog girdisine gidin ve 7 ile 9 arasında adımları izleyin. Bu yönergeler aşağıdaki adımları nasıl yapacağınızı gösterir:

    • Projeyi paketleyin.

    • Oluşturulan hizmet paketini (<project-name.cspkg>) ve bulut hizmeti yapılandırması (ServiceConfiguration.Cloud.cscfg) dosyalarını bulut hizmetiniz için bir depolama hesabı kapsayıcısına yükleyin.

      Not

      Diğer iki dosya için açıklanan işlemi kullanarak hizmet tanımı (ServiceDefinition.csdef) dosyasını da karşıya yüklemeniz gerekir.

    • Karşıya yüklenen dosyaların her biri için bir paylaşılan erişim imzası (SAS) URL'si oluşturun.

  2. Azure portal bulut hizmetinizin Genel Bakış sayfasına dönün ve Güncelleştir'i seçin.

  3. Bulut hizmetini güncelleştir sayfasında Temel Bilgiler sekmesinde aşağıdaki değişiklikleri yapın:

    1. Paket/yapılandırma/hizmet tanımı konumu alanında Blobdan'ı seçin.

    2. Paket karşıya yükle (.cspkg, .zip) alanında şu adımları izleyin:

      1. Gözat bağlantısını seçin.
      2. Dosyaları karşıya yüklediğiniz depolama hesabını ve kapsayıcıyı seçin.
      3. Kapsayıcı sayfasında ilgili dosyayı seçin (bu örnekte project-name.cspkg<>) ve ardından Seç düğmesini seçin.
    3. Yapılandırmayı karşıya yükle (.cscfg) alanı (ve ServiceConfiguration.Cloud.cscfg dosyası) için, önceki adımda özetlenen alt gereksinimi yineleyin.

    4. Hizmet tanımını karşıya yükle (.csdef) alanı (ve ServiceDefinition.csdef dosyası) için alt işlemi tekrarlayın.

  4. Yapılandırma sekmesini seçin.

  5. Anahtar kasası alanında, sertifikayı karşıya yüklediğiniz anahtar kasasını seçin (Kod değişiklikleri bölümünün başlarında). Sertifika seçilen anahtar kasasında bulunduktan sonra, listelenen sertifika Bir BulunduDurumu görüntüler.

  6. Yeni yapılandırılan projeyi dağıtmak için Güncelleştir düğmesini seçin.

Yapılandırma değişikliklerini yaptıktan sonra müşteriler, HTTPS protokollerini kullanarak bulut hizmetleri web sitenizle iletişim kurabilir. Sertifikanız otomatik olarak imzalandıysa, tarayıcı sertifikanın güvenli olmadığına dair bir uyarı bildirebilir, ancak tarayıcı bağlantıyı engellemez.

Yardım için bize ulaşın

Sorularınız veya yardıma ihtiyacınız varsa bir destek isteği oluşturun veya Azure topluluk desteği isteyin. Ürün geri bildirimini Azure geri bildirim topluluğuna da gönderebilirsiniz.