Öğretici: Güvenli karma erişim için Azure Active Directory B2C ile Ping Kimliği yapılandırma
Bu öğreticide, PingAccess ve PingFederate ile Azure Active Directory B2C'nin (Azure AD B2C) özelliklerini genişletmeyi öğreneceksiniz. PingAccess, uygulamalara ve API'lere erişim sağlar ve yetkili kullanıcı erişimi için bir ilke altyapısı sağlar. PingFederate, müşterilerin, çalışanların ve iş ortaklarının cihazlardan uygulamalara erişmesine izin veren bir yetkili olan kullanıcı kimlik doğrulaması ve çoklu oturum açma için kurumsal bir federasyon sunucusudur. Güvenli karma erişimi (SHA) etkinleştirmek için bunları birlikte kullanın.
İnternet'e sunulan birçok e-ticaret sitesi ve web uygulaması ara sunucu sistemlerinin veya ters ara sunucu sisteminin arkasına dağıtılır. Bu ara sunucu sistemleri önceden kimlik doğrulaması yapar, ilkeyi zorlar ve trafiği yönlendirir. Tipik senaryolar arasında web uygulamalarının gelen web trafiğinden korunması ve dağıtılmış sunucu dağıtımları arasında tekdüzen bir oturum yönetimi sağlanması yer alır.
Yapılandırmalar genellikle web uygulamasından kimlik doğrulamasını dışlayan bir kimlik doğrulama çevirisi katmanı içerir. Ters proxy'ler, web uygulamalarına kimliği doğrulanmış kullanıcı bağlamını sağlar. Örneğin, açık veya özet biçiminde bir üst bilgi değeri. Uygulamalar Güvenlik Onaylama İşaretleme Dili (SAML), OAuth veya OpenID Connect (OIDC) gibi endüstri standardı belirteçleri kullanmıyor. Bunun yerine, proxy kimlik doğrulama bağlamı sağlar ve tarayıcı veya yerel uygulama gibi son kullanıcı aracısı ile oturumu korur. Ara sunucu, ortadaki adam olarak çalışan bir hizmet olarak önemli bir oturum denetimi sağlar. Proxy hizmeti verimli ve ölçeklenebilirdir, ara sunucu hizmetinin arkasındaki uygulamalar için bir performans sorunu değildir. Diyagram, ters ara sunucu uygulaması ve iletişim akışıdır.
Modernleşme
Bu tür yapılandırmalarda kimlik platformlarını modernleştirmek istiyorsanız müşteri endişeleri olabilir:
- Uygulamaları bir kimlik platformunu modernleştirmeden modernleştirme çabasını ayırma
- Modernleştirilmiş kimlik hizmeti sağlayıcısından tüketilen, modern ve eski kimlik doğrulamasına sahip ortamlar
- Son kullanıcı deneyimi tutarlılığını sağlayın
- Uygulamalar arasında çoklu oturum açma deneyimi sağlama
Bu endişelere yanıt olarak, bu öğreticideki yaklaşım bir Azure AD B2C, PingAccess ve PingFederate tümleştirmesidir.
Paylaşılan ortam
Teknik açıdan uygun ve uygun maliyetli bir çözüm, ters ara sunucu sistemini modernleştirilmiş kimlik sistemini kullanacak şekilde yapılandırmak ve kimlik doğrulamasına temsilci seçmektir.
Proxy'ler modern kimlik doğrulama protokollerini destekler ve kullanıcıları yeni kimlik sağlayıcısına (IdP) gönderen yeniden yönlendirme tabanlı (pasif) kimlik doğrulamasını kullanır.
Kimlik sağlayıcısı olarak B2C'yi Azure AD
Azure AD B2C'de, kullanıcı yolculukları olarak da adlandırılan kullanıcı deneyimlerini ve davranışlarını yönlendiren ilkeler tanımlarsınız. Bu tür her ilke, kimlik doğrulamasını IdP olarak gerçekleştirebilen bir protokol uç noktasını kullanıma sunar. Uygulama tarafında, belirli ilkeler için özel işleme gerekmez. Uygulama, bir ilke tarafından kullanıma sunulan protokole özgü kimlik doğrulama uç noktasına standart bir kimlik doğrulama isteğinde bulunur.
Azure AD B2C'yi ilkeler arasında aynı vereni veya her ilke için benzersiz vereni paylaşacak şekilde yapılandırabilirsiniz. Her uygulama, oturum açma, kaydolma ve profil düzenlemeleri gibi kullanıcı davranışlarını yönlendiren, protokole özel kimlik doğrulama isteğinde bulunarak ilkelere işaret edebilir. Diyagramda OIDC ve SAML uygulama iş akışları gösterilmektedir.
Senaryo, eski uygulamaların kullanıcıyı doğru bir şekilde yeniden yönlendirmesi için zor olabilir. Uygulamalara erişim isteği kullanıcı deneyimi bağlamını içermeyebilir. Çoğu durumda, ara sunucu katmanı veya web uygulamasındaki tümleşik bir aracı erişim isteğini durdurur.
PingAccess ters ara sunucusu
PingAccess'i ters proxy olarak dağıtabilirsiniz. PingAccess, doğrudan bir isteği araya sokan kişi olarak veya web uygulaması sunucusunda çalışan bir aracıdan yeniden yönlendirme olarak.
Yukarı akış kimlik doğrulama sağlayıcısıyla kimlik doğrulaması için OIDC, OAuth2 veya SAML ile PingAccess'i yapılandırın. PingAccess sunucusunda bu amaçla bir yukarı akış IdP'si yapılandırabilirsiniz. Aşağıdaki diyagrama bakın.
IdP'leri ortaya çıkaran ilkelerin bulunduğu tipik bir Azure AD B2C dağıtımında bir zorluk vardır. PingAccess, bir yukarı akış IdP'si ile yapılandırılır.
PingFederate federasyon proxy'si
PingFederate'i yukarı akış IDP'leri için bir kimlik doğrulama sağlayıcısı veya ara sunucu olarak yapılandırabilirsiniz. Aşağıdaki diyagrama bakın.
Gelen isteği bağlamsal, dinamik veya bildirim temelli olarak Azure AD B2C ilkesine değiştirmek için bu işlevi kullanın. Protokol dizisi akışının aşağıdaki diyagramına bakın.
Önkoşullar
Başlamak için şunları yapmanız gerekir:
- Bir Azure aboneliği
- Hesabınız yoksa ücretsiz Bir Azure hesabı edinin
- Azure aboneliğinize bağlı bir Azure AD B2C kiracısı
- Docker kapsayıcılarında veya Azure sanal makinelerinde (VM) PingAccess ve PingFederate dağıtıldı
Bağlantı ve iletişim
Aşağıdaki bağlantıyı ve iletişimi onaylayın.
- PingAccess sunucusu – Azure AD B2C hizmeti ve PingFederate sunucusu tarafından yayımlanan PingFederate sunucusu, istemci tarayıcısı, OIDC, OAuth iyi bilinen ve anahtar bulma ile iletişim kurar
- PingFederate sunucusu – Azure AD B2C hizmeti tarafından yayımlanan PingAccess sunucusu, istemci tarayıcısı, OIDC, OAuth iyi bilinen ve anahtar bulma ile iletişim kurar
- Eski veya üst bilgi tabanlı AuthN uygulaması – PingAccess sunucusuna ve sunucusundan iletişim kurar
- SAML bağlı olan taraf uygulaması – İstemciden gelen tarayıcı trafiğine ulaşır. Azure AD B2C hizmeti tarafından yayımlanan SAML federasyon meta verilerine erişir.
- Modern uygulama – İstemciden gelen tarayıcı trafiğine ulaşır. Azure AD B2C hizmeti tarafından yayımlanan OIDC, OAuth iyi bilinen ve anahtar bulma özelliğine erişir.
- REST API : Yerel istemciden veya web istemcisinden gelen trafiğe ulaşır. Azure AD B2C hizmeti tarafından yayımlanan OIDC, OAuth iyi bilinen ve anahtar bulma özelliğine erişir
Azure AD B2C'yi yapılandırma
Temel kullanıcı akışlarını veya gelişmiş Identity Enterprise Framework (IEF) ilkelerini kullanabilirsiniz. PingAccess, bulma kuralı için WebFinger protokolunu kullanarak veren değerine göre meta veri uç noktasını oluşturur. Bu kuralı izlemek için kullanıcı akışı ilkesi özelliklerini kullanarak Azure AD B2C vereni güncelleştirin.
Gelişmiş ilkelerde yapılandırma, JWT belirteci veren teknik profilindeki AuthorityWithTfp değerine IssuanceClaimPattern meta veri öğesini içerir.
PingAccess ve PingFederate yapılandırma
PingAccess ve PingFederate'i yapılandırmak için aşağıdaki bölümlerdeki yönergeleri kullanın. Genel tümleştirme kullanıcı akışının aşağıdaki diyagramına bakın.
PingFederate'i belirteç sağlayıcısı olarak yapılandırma
PingFederate'i PingAccess için belirteç sağlayıcısı olarak yapılandırmak için PingFederate'den PingAccess'e bağlantı olduğundan emin olun. PingAccess'ten PingFederate'e bağlantıyı onaylayın.
Daha fazla bilgi için, Ping Kimliği belgelerinde PingAccess için belirteç sağlayıcısı olarak PingFederate'i yapılandırma bölümüne bakın.
PingAccess uygulamasını üst bilgi tabanlı kimlik doğrulaması için yapılandırma
Üst bilgi tabanlı kimlik doğrulaması için hedef web uygulaması için bir PingAccess uygulaması oluşturmak üzere aşağıdaki yönergeleri kullanın.
Sanal konak oluşturma
Önemli
Her uygulama için bir sanal konak oluşturun. Daha fazla bilgi için Ping Kimliği belgelerinde PingAccess ile neleri yapılandırabilirim? bölümüne bakın.
Sanal konak oluşturmak için:
- Ayarlar>Erişim>Sanal Konakları'na gidin.
- Sanal Konak Ekle'yi seçin.
- Konak için Uygulama URL'sinin FQDN bölümünü girin.
- Bağlantı noktası alanına 443 girin.
- Kaydet’i seçin.
Web oturumu oluşturma
Web oturumu oluşturmak için:
- Ayarlar>Erişim>Web Oturumları'na gidin.
- Web Oturumu Ekle'yi seçin.
- Web oturumu için bir Ad girin.
- Tanımlama Bilgisi Türü: İmzalı JWT veya Şifrelenmiş JWT'yi seçin.
- Hedef Kitle için benzersiz bir değer girin.
- İstemci Kimliği için Microsoft Entra Uygulama Kimliğini girin.
- İstemci Gizli Anahtarı için uygulama için oluşturduğunuz Anahtarı Microsoft Entra kimliğine girin.
- (İsteğe bağlı) Microsoft Graph API ile özel talepler oluşturun ve kullanın: Gelişmiş'i seçin. İstek Profili seçimini kaldırın ve Kullanıcı Özniteliklerini Yenileyin. Özel talepler hakkında daha fazla bilgi edinin: Microsoft Entra uygulama ara sunucusuna sahip şirket içi uygulamalar için üst bilgi tabanlı çoklu oturum açma.
- Kaydet’i seçin
Kimlik eşlemesi oluşturma
Not
Üst bilgide aynı verileri bekliyorsa, kimlik eşlemesini birden fazla uygulamayla kullanabilirsiniz.
Kimlik eşlemesi oluşturmak için:
- Ayarlar>Erişim>Kimliği Eşlemeleri'ne gidin.
- Kimlik Eşlemesi Ekle'yi seçin.
- Bir *Ad belirtin.
- Kimlik eşleme Türü üst bilgi kimlik eşlemesini seçin.
- Öznitelik Eşleme tablosunda gerekli eşlemeleri belirtin. Örneğin,
Öznitelik adı | Üst bilgi adı |
---|---|
'upn' | x-userprincipalname |
'e-posta' | x-e-posta |
'oid' | x-oid |
'scp' | x kapsamı |
'amr' | x-amr |
- Kaydet’i seçin
Site oluşturma
Not
Bazı yapılandırmalarda, bir site birden çok uygulama içerebilir. Uygun olduğunda birden fazla uygulama içeren bir site kullanabilirsiniz.
Site oluşturmak için:
- Ana>Siteler'e gidin.
- Site Ekle'yi seçin.
- Site Adını girin.
- Site Hedefini girin. Hedef, uygulamayı barındıran sunucunun hostname:port çiftidir. Bu alana uygulama yolunu girmeyin. Örneğin, konumundaki https://mysite:9999/AppName bir uygulamanın hedef değeri mysite:9999'dır.
- Hedefin güvenli bağlantılar beklenip beklenmediğini belirtin.
- Hedef güvenli bağlantılar bekliyorsa, Güvenilen Sertifika Grubunu Herhangi Birine Güven olarak ayarlayın.
- Kaydet’i seçin.
Uygulama oluşturma
Azure'da korumak istediğiniz her uygulama için PingAccess'te bir uygulama oluşturmak için.
Ana>Uygulamalar'a gidin
Uygulama Ekle'yi seçin
Uygulama için bir Ad belirtin
İsteğe bağlı olarak, uygulama için bir Açıklama girin
Uygulama için Bağlam Kökünü belirtin. Örneğin, konumundaki https://mysite:9999/AppName bir uygulamanın bağlam kökü /AppName olur. Bağlam kökü eğik çizgi (/) ile başlamalı, eğik çizgiyle (/) bitmemelidir ve birden fazla katman derinliğinde (örneğin, /Apps/Uygulamam) olabilir.
Oluşturduğunuz sanal konağı seçin
Not
Sanal konak ve bağlam kökü birleşimi PingAccess'te benzersiz olmalıdır.
Oluşturduğunuz web oturumunu seçin
Uygulamayı içeren oluşturduğunuz Siteyi seçin
Oluşturduğunuz Kimlik Eşlemesi'ni seçin
Kaydettiğinizde siteyi etkinleştirmek için Etkin'i seçin
Kaydet’i seçin
PingFederate kimlik doğrulama ilkesini yapılandırma
Azure AD B2C kiracıları tarafından sağlanan birden çok IdP'ye federasyon sağlamak için PingFederate kimlik doğrulama ilkesini yapılandırma
IdP'ler ve SP arasındaki öznitelikler arasında köprü oluşturmak için bir sözleşme oluşturun. SP her IdP'den farklı bir öznitelik kümesi gerektirmediği sürece yalnızca bir sözleşmeye ihtiyacınız olmalıdır. Daha fazla bilgi için Ping Kimliği belgelerindeki Federasyon hub'ı ve kimlik doğrulama ilkesi sözleşmelerine bakın.
Her IdP için IdP ile SP olarak federasyon hub'ı pingfederate arasında bir IdP bağlantısı oluşturun.
Hedef Oturum Eşleme penceresinde, geçerli kimlik doğrulama ilkesi sözleşmelerini IdP bağlantısına ekleyin.
Seçiciler penceresinde bir kimlik doğrulama seçicisi yapılandırın. Örneğin, kimlik doğrulama ilkesindeki her IdP'yi ilgili IdP bağlantısına eşlemek için bkz. İlk Tanımlayıcı Bağdaştırıcısı örneği.
PingFederate, IdP olarak federasyon hub'ı ve SP arasında bir SP bağlantısı oluşturun.
Kimlik Doğrulama Kaynağı Eşleme penceresinde sp bağlantısına karşılık gelen kimlik doğrulama ilkesi sözleşmesini ekleyin.
Sp olarak federasyon hub'ı olan PingFederate'e bağlanmak için her IdP ile çalışın.
IdP olarak federasyon hub'ı pingFederate'e bağlanmak için SP ile çalışın.
Sonraki adımlar
Ek bilgi için aşağıdaki makaleleri gözden geçirin