Aracılığıyla paylaş


Nasıl yapılır: ACS Kullanarak İlk Talep Kullanan ASP.NET Hizmetimi Oluşturma

Güncelleştirme: 19 Haziran 2015

Şunlar için geçerlidir: Azure

Uygulanan Öğe

  • Microsoft Azure Active Directory Access Control (Access Control Hizmeti veya ACS olarak da bilinir)

Genel Bakış

Not

Bu konu eski bir teknolojiyle ilgili. XML Web hizmetleri ve XML Web hizmeti istemcileri oluşturmak için bkz https://go.microsoft.com/fwlink/?LinkID=220304. .

Bu konu başlığında, basit bir ASP.NET web hizmetinin ACS ile tümleştirilmesi açıklanmaktadır. Web hizmetinizi ACS ile tümleştirerek, kimlik doğrulama ve yetkilendirme özelliklerini kodunuz dışında ekleyerek dikkate alırsınız. ACS, istemcilerin kimliğini doğrulamak ve web hizmetinize yetkilendirmek için mekanizma sağlar. Daha fazla bilgi için bkz . Web Hizmetleri ve ACS

Bir web hizmeti senaryosunda, bir web hizmeti istemcisinin tarayıcıya erişimi olmadığı ve otonom olarak (kullanıcı katılımı olmadan) davrandığı varsayılır. Ayrıca bir web hizmeti senaryosunda istemci, bir hizmet kimliği veya kurumsal kimlik kullanarak bir web hizmetine erişim elde edebilir. Bu konuda açıklanan alıştırmada, bir istemci ACS'de yapılandırılmış bir hizmet kimliği kimlik bilgisi türünü kullanarak örnek ASP.NET web hizmetine erişim kazanır.

Bu konudaki adımları gerçekleştirmek için örnek bir ASP.NET hizmeti indirmeniz gerekir. Daha fazla bilgi için bkz. Kod Örneği: ASP.NET Web Hizmeti.

ACS'yi ASP.NET Web Hizmeti ile Tümleştirme Adımları

Önemli

Aşağıdaki adımları gerçekleştirmeden önce sisteminizin ACS Önkoşulları bölümünde özetlenen tüm .NET framework ve platform gereksinimlerini karşıladığından emin olun.

ACS'yi bu örnek ASP.NET web hizmetiyle tümleştirmek için aşağıdaki adımları tamamlayın:

  • 1. Adım - Access Control Ad Alanı Oluşturma

  • 2. Adım – ACS Yönetim Portalı'nı başlatma

  • 3. Adım – Bağlı Olan Taraf Uygulaması Ekleme

  • 4. Adım - Kural Oluşturma

  • 5. Adım – Hizmet Kimliği Yapılandırma

  • 6. Adım : ACS ile ASP.NET Web Hizmetiniz Arasında Güven Yapılandırma

  • 7. Adım – ACS ile ASP.NET Web Hizmetiniz Arasındaki Tümleştirmeyi Test Etme

1. Adım - Access Control Ad Alanı Oluşturma

Ayrıntılı yönergeler için bkz. Nasıl yapılır: Access Control Ad Alanı Oluşturma.

2. Adım – ACS Yönetim Portalı'nı başlatma

ACS Yönetim Portalı kimlik sağlayıcıları ekleyerek, bağlı olan taraf uygulamalarını yapılandırarak, kural ve kural grupları tanımlayarak ve bağlı olan taraf uygulamanızın güvendiği kimlik bilgilerini oluşturarak Access Control ad alanınızı yapılandırmanıza olanak tanır.

ACS Yönetim Portalı'nı başlatmak için

  1. Microsoft Azure Yönetim Portalına ()https://manage.WindowsAzure.com gidin, oturum açın ve Active Directory'ye tıklayın. (Sorun giderme ipucu: "Active Directory" öğesi eksik veya kullanılamıyor)

  2. Access Control ad alanını yönetmek için ad alanını seçin ve yönet'e tıklayın. (Veya Ad Alanları'Access Control tıklayın, ad alanını seçin ve yönet'e tıklayın.)

3. Adım – Bağlı Olan Taraf Uygulaması Ekleme

Bu bölümde bağlı olan taraf uygulamasının nasıl ekleneceği açıklanmaktadır. Bağlı olan taraf uygulamaları hakkında daha fazla bilgi için bkz . Bağlı Olan Taraf Uygulamaları.

Bağlı olan taraf uygulamasını ayarlamak için

  1. ACS Yönetim Portalı'nda, sol taraftaki ağaçta Bağlı Olan Taraf Uygulamaları'na tıklayın veya Başlarken bölümünün altındaki Bağlı Olan Taraf Uygulamaları bağlantısına tıklayın.

  2. Bağlı Olan Taraf Uygulamaları sayfasında Ekle'ye tıklayın.

  3. Bağlı Olan Taraf Uygulaması Ekle sayfasında aşağıdakileri yapın:

    • Ad alanına bağlı olan taraf uygulamasının adını yazın. Bu alıştırma için ASPNET Basit Hizmeti yazın.

    • Mod'daAyarları el ile girin'i seçin.

    • Bölge'de, ACS tarafından verilen güvenlik belirtecinin uygulandığı URI'yi yazın. Bu alıştırma için yazın https://localhost:8000/Service.

    • Dönüş URL'si bölümünde ACS'nin güvenlik belirtecini döndürdüğü URL'yi yazın. Bu alıştırma için yazın https://localhost:8000/Service.

    • Hata URL'si (isteğe bağlı) bölümünde, oturum açma sırasında bir hata oluşursa ACS'nin gönderebileceği URL'yi girin. Bu alıştırma için bu alanı boş bırakın.

    • Belirteç biçimi'nde, ACS'nin bu bağlı olan taraf uygulamasına güvenlik belirteçleri verirken kullanması için bir belirteç biçimi seçin. Bu alıştırma için SWT'yi seçin. Belirteçler ve belirteç biçimleri hakkında daha fazla bilgi için bkz. ACS'de Desteklenen Belirteç Biçimleri ve Bağlı Olan Taraf Uygulamalarında "Belirteç Biçimi".

    • Belirteç ömrü (saniye) alanında ACS tarafından verilen bir güvenlik belirtecinin geçerli kalması için gereken süreyi belirtin. Bu alıştırma için varsayılan 600 değerini kabul edin. Belirteç yaşam süreleri hakkında daha fazla bilgi için bağlı olan taraf uygulamalarındaki "Belirteç Şifreleme İlkesi" bölümüne bakın.

    • Kimlik sağlayıcıları bölümünde, bu bağlı olan taraf uygulamasıyla kullanılacak kimlik sağlayıcılarını seçebilirsiniz.

      Ancak bu alıştırmada hiçbir kimlik sağlayıcısı kullanılmaz, istemci bir hizmet kimliğiyle web hizmetine erişim kazanır, bu nedenle Live ID Windows yanındaki onay kutusunu temizlemeyi unutmayın.

      Hizmet kimlikleri hakkında daha fazla bilgi için bkz. Hizmet Kimlikleri.

    • Kural grupları'nda, bu bağlı olan taraf uygulamasının talepleri işlerken kullanılacak kural gruplarını seçin. Bu alıştırma için varsayılan olarak denetlenen Yeni Kural Grubu Oluştur'u kabul edin. Kural grupları hakkında daha fazla bilgi için bkz. Kural Grupları ve Kurallar.

    • Belirteç İmzalama Ayarlar altında, Belirteç imzalama anahtarı'ndaOluştur düğmesine tıklayarak bu bağlı olan taraf için 256 bit simetrik anahtar oluşturun.

  4. Kaydet’e tıklayın.

4. Adım - Kural Oluşturma

Kurallar, taleplerin kimlik sağlayıcılarından veya ACS'den (talep veren ACS ise) bağlı olan taraf uygulamanıza nasıl geçirileceğini belirler. Kurallar ve kural grupları hakkında daha fazla bilgi için bkz. Kural Grupları ve Kurallar.

Kural oluşturmak için

  1. ACS Yönetim Portalı Giriş sayfasında, sol taraftaki ağaçta Kural Grupları'na tıklayın veya Başlarken bölümünün altındaki Kural Grupları bağlantısına tıklayın.

  2. Kural Grupları sayfasında, ASPNET Basit Hizmeti için Varsayılan Kural Grubu'na tıklayın (bağlı olan taraf uygulamanızı ASPNET Basit Hizmeti olarak adlandırdığınız için).

  3. Kural Grubunu Düzenle sayfasında Ekle'ye tıklayın.

  4. Talep Kuralı Ekle sayfasında aşağıdakileri yapın:

    • If bölümünde, Talep veren'in altında hizmet Access Control'yi seçin.

    • Eğer bölümünde, Giriş talep türü'nin altında, Varsayılan Herhangi biri seçimini değiştirmeyin.

    • Eğer bölümünde, Giriş talep değeri'nin altında, varsayılan Herhangi biri seçimini değiştirmeyin.

    • Sonra bölümünde, Çıkış talep türü altında Türü girin'i seçin ve sonra eylemi yazın, çünkü bu alıştırmada kullandığınız ASP.NET web hizmeti örneğinin kodunda belirtilen talep türü budur: requiredClaimType = “action”. Bu dizeyi örnek kodda, Default.aspx.cs dosyasında, acs\WebServices\ASPNETSimpleService\Service altında bulabilirsiniz.

    • Sonra bölümünde, Çıkış talep değeri'nin altında Değer girin'i seçin ve ardından ters yazın, çünkü bu alıştırmada kullandığınız ASP.NET web hizmeti örneğinin kodunda belirtilen talep türü budur: requiredClaimValue = “reverse”. Bu dizeyi örnek kodda, Default.aspx.cs dosyasında, acs\WebServices\ASPNETSimpleService\Service altında bulabilirsiniz.

    • Kaydet’e tıklayın.

  5. Kural Grubunu Düzenle sayfasında Kaydet'e tıklayın.

5. Adım – Hizmet Kimliği Yapılandırma

Bu konuda açıklanan alıştırmada, istemci ACS ile kaydedilmiş ve ACS tarafından yönetilen bir kullanıcı adı ve parola ile ACS tarafından verilen Basit Web Belirteci (SWT) ister, başka bir deyişle bir ACS hizmet kimliği. Bu bölümde ACS hizmet kimliğinin nasıl yapılandırıldığı veya istemcinin ACS'den belirteç istemek için kullanabileceği ACS tarafından barındırılan kimlik bilgilerinin nasıl yapılandırıldığı açıklanmaktadır. Daha fazla bilgi için bkz . Hizmet Kimlikleri. Bu alıştırma için hizmet kimliği adını acssample (ASP.NET hizmet istemcisi ACS'den belirteç isterken kullanıcı adı olarak kullanır) ve parolayı pass@word1 olarak ayarlayın.

Hizmet kimliğini yapılandırmak için

  1. ACS Yönetim Portalı Giriş sayfasında, sol taraftaki ağaçta Hizmet Kimlikleri'ne tıklayın.

  2. Hizmet Kimlikleri sayfasında Ekle'ye tıklayın.

  3. Hizmet Kimliği Ekle sayfasında aşağıdakileri yapın ve kaydet'e tıklayın:

    1. Ad alanına acssample yazın.

    2. Tür'deParola'yı seçin.

    3. Parola'yapass@word1 yazın.

    4. Geçerlilik tarihi ve Son Kullanma tarihi'nde varsayılan değerleri değiştirmeden bırakın.

  4. Hizmet Kimliğini Düzenle sayfasında Kaydet'e tıklayın.

6. Adım – ACS ile ASP.NET Web Hizmetiniz Arasındaki Güveni Yapılandırma

Bu bölümde ACS'yi örnek ASP.NET hizmetinizle tümleştirme açıklanmaktadır. Daha fazla bilgi için bkz. Kod Örneği: ASP.NET Web Hizmeti.

ACS ile ASP.NET web hizmeti arasındaki güveni yapılandırmak için

  1. İndirdiğiniz örnekte ASPNETSimpleService.sln dosyasını bulun ve Visual Studio ® 2010'da açın.

  2. Visual Studio 2010'da, Çözüm Gezgini'da, 'ASPNETSimpleService' Çözümü altında web.configçift tıklayın.

  3. web.configbölümünde, yukarıdaki adımlarda ACS'de yapılandırdığınız Access Control ad alanı adını ve belirteç imzalama anahtarını girin. Belirteç imzalama anahtarını görüntülemek için ACS Yönetim Portalı'nda Sertifikalar ve Anahtarlar'a tıklayın.

    Aşağıdaki kod parçacığı, güncelleştirmeniz gereken web.config dosyasının öğelerini gösterir.

    <appSettings>
        <add key="AccessControlHostName" value="accesscontrol.windows.net"/>
        <add key="AccessControlNamespace" value="...enter your Access Control namespace name..."/>
        <add key="IssuerSigningKey" value="...enter your signing key..."/>
      </appSettings>
    
  4. Güncelleştirilmiş web.config dosyasını kaydedin.

  5. Visual Studio 2010'da, Çözüm Gezgini 'ASPNETSimpleService' Çözümü altında app.config dosyasına çift tıklayın.

  6. app.config dosyasında, Access Control ad alanınızın adını ve önceki adımlarda ACS'de yapılandırdığınız hizmet kimliğinin kullanıcı adını ve parolasını girin. Kullanıcı adını ve parolayı görüntülemek için ACS Yönetim Portalı'nda Hizmet Kimlikleri'ne tıklayın.

    Aşağıdaki kod parçacığı, değiştirmeniz gereken app.config dosyasının öğelerini gösterir.

    <appSettings>
        <add key="AccessControlHostName" value="accesscontrol.windows.net"/>
        <add key="AccessControlNamespace" value="...enter your Access Control namespace name..."/>
        <add key="WrapPassword" value="...update to your password..."/>
        <add key="WrapUsername" value="...update to your username..."/>
        <add key="ServiceAddress" value="https://localhost:8000/Service/Default.aspx" />
      </appSettings>
    
  7. Güncelleştirilmiş app.config dosyasını kaydedin.

7. Adım – ACS ile ASP.NET Web Hizmetiniz Arasındaki Tümleştirmeyi Test Edin

Bu bölümde, ASP.NET web hizmetinizle ACS arasındaki tümleştirmeyi nasıl test edebilirsiniz açıklanmaktadır.

ACS ile ASP.NET web hizmetiniz arasındaki tümleştirmeyi test etmek için

  1. ASP.NET hizmetini çalıştırmak için Visual Studio 2010'da F5 tuşuna basın.

  2. ASP.NET web hizmeti istemcisini çalıştırmak için Çözüm Gezgini İstemci'ye sağ tıklayıp Hata Ayıkla'yı ve ardından Yeni Örneği Başlat'ı seçin.

    Komut satırı penceresi açılır ve içinde şu ileti bulunur: Ters çevrilecek bir dize girin ve ENTER tuşuna> basın<.

  3. Merhaba dünya! gibi bir dize girin ve enter tuşuna basın.

    Girişiniz merhaba dünya! ise konsol uygulamasında şu yanıtı görmeniz gerekir: !dlrow olleh.

Ayrıca Bkz.

Kavramlar

ACS Nasıl Yapılır