Güvenlik içinKerberos (KRB5) kimlik doğrulama mekanizması desteği

Kerberos kimlik doğrulama mekanizması, Kerberos kimlik doğrulamasını destekleyen diğer uygulamalar (.NET, DB2® ve diğerleri gibi) ile birlikte çalışabilirlik sağlar. Tek oturum açma uçtan (SSO) uçtan uca birlikte çalışabilir çözümler sağlar ve özgün istekte bulunanın kimliğini korur.

Not: Security support for Kerberos as the authentication mechanism was added for WebSphere® Application Server Version 7.0. Kerberos , olgun, esnek, açık ve çok güvenli bir ağ doğrulama protokolüdür. Kerberos , kimlik doğrulaması, karşılıklı kimlik doğrulama, ileti bütünlüğü ve gizlilik ve yetki devri özelliklerini içerir. Sunucu tarafında Kerberos ' u etkinleştirebilirsiniz. Zengin Java™ istemcisinin WebSphere Application Serverkimlik doğrulaması için Kerberos simgesini kullanmasına olanak sağlamak için destek sağlanır.

Kerberosnedir?

Kerberos has withstood the test of time and is now at version 5.0. Kerberos , geniş yayılma platformu desteğini (örneğin, Windows, Linux®, Solaris, AIX®ve z/OS®) kısmen, çünkü Kerberos kaynak kodunun, başlangıçta oluşturulduğu Massachusetts Teknoloji Enstitüsü 'nden (MIT) serbestçe yüklendiğini göstermektedir.

Kerberos is composed of three parts: a client, a server, and a trusted third party known as the Kerberos Key Distribution Center (KDC). KDC, kimlik doğrulama ve bildirim formu verme hizmetleri sağlar.

KDC, kendi bölgesindeki tüm güvenlik birincil kullanıcıları için bir veritabanı ya da kullanıcı hesabı havuzu sağlar. Birçok Kerberos dağıtımında, Kerberos birincil kullanıcı ve ilke DB ' ye ilişkin dosya tabanlı havuzlar ve diğerleri havuz olarak LDAP (Lightweight Directory Access Protocol; Temel Dizin Erişimi Protokolü) kullanır.

Kerberos does not support any notion of groups (that is, iKeys groups or groups of users or principals). KDC, hesap veritabanındaki her bir birincil kullanıcı için uzun vadeli bir anahtar sağlar. Bu uzun vadeli anahtar, asıl adın parolasından türetilir. Yalnızca KDC ve asıl adın temsil ettiği kullanıcı, uzun vadeli anahtar ya da parolanın ne olduğunu bilmelidir.

Bir kimlik doğrulama mekanizması olarak Kerberos ' un yararının yararları

WebSphere Application Server için kimlik doğrulama mekanizması olarak Kerberos ' un sağladığı yararlar şunları içerir:

  • Kerberos protokolü bir standarttır. Bu, Kerberos kimlik doğrulamasını destekleyen diğer uygulamalarla (.NET, DB2 ve diğerleri gibi) birlikte çalışabilirliğe olanak sağlar. Tek oturum açma uçtan (SSO) uçtan uca birlikte çalışabilir çözümler sağlar ve özgün istekte bulunanın kimliğini korur.
  • Kerberos kimlik doğrulaması kullanılırken, kullanıcı temizleme metni parolası kullanıcı makineden hiçbir zaman ayrılamamaz. Kullanıcı, kullanıcı parolasının tek yönlü hash değerini kullanarak KDC ' den bir Kerberos güvenlik onayı verme güvenlik onayını (TGT) edinir ve bu bildirim formunu alır. Kullanıcı, TGT 'yi kullanarak KDC' den bir Kerberos hizmet bildirim formunu da alır. İstemci kimliğini gösteren Kerberos hizmet kartı, kimlik doğrulaması için WebSphere Application Server ' a gönderilir.
  • A Java client can participate in Kerberos SSO using the Kerberos credential cache to authenticate to WebSphere Application Server.
  • HTTP iletişim kuralını kullananJ2EE, web hizmeti, .NET ve web tarayıcısı istemcileri, WebSphere Application Server 'de kimlik doğrulaması yapmak ve SPNEGO web kimlik doğrulamasını kullanarak SSO' ya katılmak için Basit ve Korunan GSS-API Müzakere Mekanizması (SPNEGO) simgesini kullanabilir. Web kimlik doğrulama hizmeti olarak SPNEGO desteği, bu WebSphere Application Serveryayınında yeni bir hizmettir.

    Daha fazla bilgi için SPNEGO tekli oturum açma hakkında bilgi okuyun.

  • WebSphere Application Server , aynı anda hem Kerberos hem de Lightweight Third-Party Authentication (LTPA) kimlik doğrulama mekanizmalarını destekleyebilir.
  • Kerberos kimlik doğrulaması kullanılarak sunucu-sunucu iletişimi sağlanır.

Tek bir Kerberos kapsama alanı ortamındaKerberos kimlik doğrulaması

WebSphere Application Server , aşağıdaki şekilde gösterildiği gibi, tek bir Kerberos kapsama alanı ortamında Kerberos kimlik doğrulamasını destekler:

Şekil 1. Tek bir Kerberos kapsama alanı ortamındaKerberos kimlik doğrulaması
WebSphere Application Server , tek bir Kerberos erişim alanı ortamında Kerberos kimlik doğrulamasını destekler

WebSphere Application Server , kimlik doğrulaması için bir Kerberos ya da SPNEGO belirteci aldığında, istekte bulunana sahip bir güvenlik bağlamı oluşturmak için Kerberos hizmet asıl adını (SPN) kullanır. Bir güvenlik bağlamı oluşturulduysa, WebSphere Kerberos oturum açma modülü bir istemci GSS yetkilendirmesi kimlik bilgisini alır, Kerberos kimlik bilgisinde bir Kerberos kimlik doğrulama belirteci tabanı yaratır ve bunları diğer simgelerle istemci konusuna yerleştirir.

Sunucu aşağı akım sunucusu ya da arka uç kaynakları kullanmalı ise, istemci GSS yetki devri kimlik bilgilerini kullanır. If a downstream server does not support Kerberos authentication, the server uses the LTPA token instead of the Kerberos token. Bir istemci istekte bir GSS yetki devri kimlik bilgisini içermiyorsa, sunucu, aşağı akış sunucusu için LTPA simgesini kullanır. The Kerberos authentication token and principal are propagated to the downstream server as part of the security attributes propagation feature.

WebSphere Application Server ve KDC aynı kullanıcı kaydını kullanmıyorsa, Kerberos asıl adının WebSphere kullanıcı adıyla eşlenmesi için bir JAAS özel oturum açma modülü gerekebilir.

Çapraz ya da güvenilen Kerberos erişim alanı ortamındaKerberos kimlik doğrulaması

WebSphere Application Server , aşağıdaki şekilde gösterildiği gibi, çapraz ya da güvenilen bir Kerberos kapsama alanı ortamında Kerberos kimlik doğrulamasını da destekler:

Şekil 2. Çapraz ya da güvenilen Kerberos erişim alanı ortamındaKerberos kimlik doğrulaması
WebSphere Application Server , çapraz ya da güvenilir Kerberos erişim alanı ortamında Kerberos kimlik doğrulamasını da destekler

WebSphere Application Server , kimlik doğrulaması için bir Kerberos ya da SPNEGO belirteci aldığında, istekte bulunana sahip bir güvenlik bağlamı oluşturmak için Kerberos hizmet asıl adını (SPN) kullanır. Bir güvenlik bağlamı oluşturulduysa, WebSphere Kerberos oturum açma modülü her zaman bir istemci GSS yetkilendirmesi kimlik bilgisini ve Kerberos güvenlik onayını alır ve bunları diğer simgelerle istemci konusuna yerleştirir.

Sunucu aşağı akım sunucusu ya da arka uç kaynakları kullanmalı ise, istemci GSS yetki devri kimlik bilgilerini kullanır. If a downstream server does not support Kerberos authentication, the server uses the LTPA token instead of the Kerberos token. Bir istemci istekte bir GSS yetki devri kimlik bilgisini içermiyorsa, sunucu, aşağı akış sunucusu için LTPA simgesini kullanır. The Kerberos authentication token and principal are propagated to the downstream server as part of the security attributes propagation feature.

WebSphere Application Server ve KDC aynı kullanıcı kaydını kullanmıyorsa, Kerberos asıl adının WebSphere kullanıcı adıyla eşlenmesi için bir JAAS özel oturum açma modülü gerekebilir.

Bu WebSphere Application Serveryayınında, yeni güvenlik birden çok etki alanı hücre düzeyinde yalnızca Kerberos ' u destekler. Tüm WebSphere Application Serverürünlerinin aynı Kerberos bölgesi tarafından kullanılması gerekir. Ancak, Kerberos kimlik doğrulamasını destekleyen istemciler ve arka uç kaynakları ( DB2, .NET sunucusu ve diğerleri gibi) kendi Kerberos kapsama alanına sahip olabilir. Yalnızca eşdüzeyler arası ve geçişli güven arası güven arası kimlik doğrulaması desteklenir. Güvenilir Kerberos kapsama alanları için aşağıdaki adımlar gerçekleştirilmelidir:

  • Kerberos güvenilir kapsama alanı ayarının her bir Kerberos KDC ' de yapılması gerekir. Kerberos tarafından güvenilir bir kapsama alanı ayarlamaya ilişkin ek bilgi edinmek için Kerberos Administrator and User's Guide belgesine bakın.
  • Kerberos yapılanış dosyasının güvenilir kapsama alanını listelemeniz gerekebilir.
  • Add Kerberos trusted realms in the administrative console by clicking Genel güvenlik > CSIv2 giden iletişimleri > Güvenilir kimlik doğrulama bölgeleri-giden.

Aşağıdaki şekil, güvenilen bir Kerberos bölgesinde Kerberos simgesi olan WebSphere Application Server için kimlik doğrulaması yapmak için Kerberos kimlik bilgileri önbelleğini kullanan bir Java ve yönetim istemcisini göstermektedir:

Şekil 3. Güvenilir bir Kerberos bölgesinde Kerberos simgesi ile WebSphere Application Server ' ta kimlik doğrulaması yapmak için Kerberos kimlik bilgileri önbelleğini kullanma
Güvenilir bir Kerberos bölgesinde Kerberos simgesi ile WebSphere Application Server ' ta kimlik doğrulaması yapmak için Kerberos kimlik bilgileri önbelleğini kullanma
Önceki şekilde, aşağıdaki olaylar oluşur:
  1. The client uses the Kerberos credential cache if it exists.
  2. İstemci, Kerberos kimlik bilgileri önbelleğini kullanarak Realm B KDC ' den Realm A için bir kapsama alanı bileti (TGS_REQ) ister.
  3. İstemci, Realm A KDC ' den server1 (TGS_REQ) için Kerberos hizmet bildirim formu istemek için bir sınır bölgesi bildirim formu kullanır.
  4. KDC ' den döndürülen Kerberos simgesi (TGS_REP) CSIv2 ileti doğrulama simgesine eklenir ve kimlik doğrulaması için server1 ' e gönderilir.
  5. The server calls Krb5LoginModuleWrapper to establish security context with the client using the server Kerberos Service Principal Name (SPN) and keys from the krb5.keytab file. Sunucu, istemciyle başarıyla bir güvenlik bağlamı kurarsa, istemci GSS yetki devri kimlik bilgilerini ve bildirim formlarını alır ve istemci konusunda bunları yerleştirir.
  6. KDC ve WebSphere Application Server aynı kullanıcı kaydını kullanmıyorsa, isteğe bağlı olarak özel bir JAAS Oturum Açma Modülü gerekebilir.
  7. Kullanıcı, WebSphere Application Serverkullanıcı kaydı ile doğrulanır.
  8. Sonuçlar (başarı ya da başarısızlık) istemciye döndürülür.

The following figure shows a Java and administrative client that uses a Kerberos principal name and password to authenticate to WebSphere Application Server with a Kerberos token:

Şekil 4. Kerberos simgesi olan WebSphere Application Server kimlik doğrulaması için bir Kerberos birincil kullanıcı adı ve parolası kullanılması
Using a Kerberos principal name and password to authenticate to WebSphere Application Server with a Kerberos token.
Önceki şekilde, aşağıdaki olaylar oluşur:
  1. İstemci, KDC ' den Kerberos verme güvenlik onayını (TGT) alır.
  2. İstemci, TGT ' yi kullanarak server1 (TGS_REQ) için bir Kerberos hizmet bildirim formu alır.
  3. KDC ' den döndürülen Kerberos simgesi (TGS_REP) CSIv2 ileti doğrulama simgesine eklenir ve kimlik doğrulaması için server1 ' e gönderilir.
  4. The server calls Krb5LoginModuleWrapper to establish security context with the client using the server Kerberos Service Principal Name (SPN) and keys from the krb5.keytab file. Sunucu, istemciyle başarıyla bir güvenlik bağlamı kurarsa, istemci GSS yetki devri kimlik bilgilerini ve bildirim formlarını alır ve istemci konusunda bunları yerleştirir.
  5. KDC ve WebSphere Application Server aynı kullanıcı kaydını kullanmıyorsa, isteğe bağlı olarak özel bir JAAS Oturum Açma Modülü gerekebilir.
  6. Kullanıcı, WebSphere Application Serverkullanıcı kaydı ile doğrulanır.
  7. Sonuçlar istemciye döndürülür.

Aşağıdaki şekil, sunucu ile sunucu iletişimini göstermektedir:

Şekil 5. Sunucu-sunucu iletişimleri
Bir WebSphere uygulama sunucusu başlatıldığında, KDC 'de oturum açmak için sunucu tanıtıcısını ve parolayı kullanır ve sonra TGT' yi alır. Daha sonra TGT ' yi kullanarak başka bir sunucuyla iletişim kurmak için bir hizmet bildirim formu isteğinde bulunmaya devam eder. Bir WebSphere uygulama sunucusu, sunucu kimliği ve parola yerine iç sunucu tanıtıcısını kullanıyorsa, bir LTPA belirteci kullanılarak sunucu-sunucu iletişimi gerçekleştirilir.

Bir WebSphere Application Server başlatıldığında, KDC 'de oturum açmak için sunucu tanıtıcısını ve parolayı kullanır ve sonra TGT' yi alır. Daha sonra TGT ' yi kullanarak başka bir sunucuyla iletişim kurmak için bir hizmet bildirim formu isteğinde bulunmaya devam eder. Bir WebSphere Application Server , sunucu kimliği ve parola yerine iç sunucu tanıtıcısını kullanıyorsa, bir LTPA belirteci kullanılarak sunucu-sunucu iletişimi gerçekleştirilir. Önceki şekilde, aşağıdaki olaylar oluşur:

  1. WebSphere Application Server 1, WebSphere Application Server 2 'de çalışan bir Enterprise JavaBeans (EJB) üzerinde bir yöntemi (foo ()) çağırır.
  2. Server1 , Server1 TGT kullanarak Server2 (TGS_REQ) için bir Kerberos hizmet bildirim formu alır.
  3. Adım 2 ile aynı.
  4. Bir KDC 'den döndürülen Kerberos simgesi (TGS_REP), CSIv2 ileti doğrulama simgesine eklenir ve kimlik doğrulaması için Server2 ' e gönderilir.
  5. Server2 calls the acceptSecContext() method to establish security context with server1 using the server2 Kerberos Service Principal Name (SPN) and keys from the krb5.keytab file. server2 , server1ile başarıyla bir güvenlik bağlamı oluşturduysa, her zaman server1 GSS yetki devri kimlik bilgilerini ve bildirim formlarını çıkarır ve konu içinde yer alır.
  6. Sunucu tanıtıcısı, WebSphere kullanıcı kaydı ile doğrulanır.
Beladan kaçının: Bir Java istemcisi uygulaması ve uygulama sunucusu aynı makinede varsa ve bunlar farklı Kerberos bölge adlarını kullanıyorlarsa, çalıştırma zamanı Kerberos yapılandırma dosyasından varsayılan bölge adını kullanır. Diğer bir seçenek olarak, oturum açma işlemi sırasında kapsama alanı adını da belirtebilirsiniz.
Sorun kaçmaktan kaçının: Kerberos ve LTPA kimlik doğrulaması birden çok KDC ortamında yapılandırılabilir. Temel kimlik doğrulama, bir parola ve Kerberos bölge adı olmadan kısa bir ad içerebilir. For this basic authentication, a combination of the domain_realm element and the default_realm element determines which KDC the Kerberos client uses to authenticate the request. Belirlenen KDC ' ye ait olmayan kullanıcılar, tam olarak belirtilmiş bir Kerberos asıl adı ile oturum açmalıdır; örneğin, Bob@myKerberosRealm.

WebSphere Application Serveriçin kimlik doğrulama mekanizması olarak Kerberos ' u ayarlamadan önce dikkate alınması gereken şeyler

WebSphere Application Server , kimlik doğrulama için HTTP üstbilgisinde, Kerberos simgelerinde, LTPA simgelerinde ve BasicAuth (GSSUP) SPNEGO simgelerini desteklemektedir.

Uçtan uca Kerberos ve uçtan uca SPNEGO çözümlerini Kerberos çözümlerine sağlamak için aşağıdakilerin farkında olun:
  • Enabled delegation of Kerberos kimlik bilgileri seçeneği belirlenmeli. Bu seçenekle ilgili daha fazla bilgi için Denetim konsolunu kullanarak Kerberos ' yi kimlik doğrulama mekanizması olarak yapılandırma ' i okuyun.
  • Bir hedef sunucunun bir istemci yetkilendirmesini Kerberos kimlik bilgisini açabilmesi ve aşağı akış sunucusuna gitmek için kullanabilmesi için, istemciye iletilebilir, adrese daha az ve yenilenebilir işaretler içeren bir bildirim formu verme (TGT) belgesi edinmelidir.
  • Adres içeren bir istemci TGT, aşağı akım sunucusu, veri eşleme hizmeti (DRS) önbelleği ve küme ortamları için kullanılamaz.
  • See your Kerberos KDC platforms to make sure that it allows for client delegation Kerberos.
  • For a long running application, a client should request a TGT with a renewable flag so that a target server can renew the delegation Kerberos.
  • Uzun süredir çalışan bir uygulama için, Kerberos biletin, en az uygulamanın çalıştırıldığı bir süre için geçerli olduğundan emin olun. Örneğin, uygulama 5 dakika süren bir işlemi işleyiyorsa, Kerberos güvenlik onayı en az 5 dakika geçerli olmalıdır.
  • Kerberos kimlik doğrulaması ve SPNEGO web kimlik doğrulaması, Active Directory çapraz etki alanı için desteklenen her ikisi de aynı orman içinde güvenir.
  • Yönetimle görevli bir aracının Kerberos kimlik doğrulama mekanizmasını kullanması için, bir denetim altsistemi profiliyle bir LTPA anahtarı değiştirmelidir.

    [z/OS]Aşağıdaki güvenlik özel özelliği truedeğerine ayarlanmalıdır: com.ibm.websphere.security.krb.longLivedTicket.

  • Aşağı akış kimlik doğrulaması için istemci yetkilendirmesi Kerberos kimlik bilgilerini kullanmayı planlıyorsanız, istemcinin 10 dakikadan daha büyük bir hizmet bildirim formu istemesine dikkat edin. İstemci yetkilendirmesi Kerberos kimlik bilgileri geçerlik süresi 10 dakikadan daha azsa, sunucu bunu yenilemeyi dener.
Not: İstemci, WebSphere Application Server ve KDC makineleri saati eşitlenmiş tutmalıdır. En iyi uygulama, tüm sistemlerin eşitlenmiş olması için bir zaman sunucusu kullanmandır.
WebSphere Application Serverürününün bu yayın düzeyi için aşağıdakilerin farkında olun:
  • Aşağıdaki KDC ' leri kullanılarak, Tivoli ® Access Manager ile uçtan uca Kerberos desteği bulunur:
    • z/OS
    • Microsoft (tek ya da çok kapsama alanı)
    • AIX
    • Linux
  • You can now configure and enable Kerberos cross realms for WebSphere Application Server and the thin client.
  • WebSphere Application Server administrative function with Kerberos is limited by the following:
    • Esnek yönetim etkinlikleri için tercih edilen kimlik doğrulama mekanizması Risvest Shamir Adleman (RSA) kimlik doğrulama mekanizmasıdır (varsayılan olarak).
    • Job Manager configured with Kerberos as the administrative authentication does not support Cross-Kerberos realms. Kayıtlı düğümler olarak aynı Kerberos bölgesinde olmalı ya da yönetim kimlik doğrulaması RSA olarak ayarlanmalıdır
    • While Kerberos authentication is supported for administrative clients (wsadmin or Java clients) you should use the same KDC realm as the WebSphere Application Server it administers. Tersi durumda, kullanıcı kimliği ve parola önerilir.
    • Bazı düğümlerin WebSphere Application Server Yayın Düzeyi 6.x düğümleri ya da daha önceki bir sürümü olduğunda karma hücre Kerberos ve LTPA yapılandırması desteklenmez.

Kerberos kimlik doğrulaması için destek bilgileri

Aşağıdaki senaryolar desteklenir:
  • Aynı ormanlarda olmayan dış etki alanı güvenleri
  • Aynı orman içinde etki alanı güven
  • Kerberos kapsama alanı güveni
Aşağıdaki senaryolar desteklenmez:
  • Orman güvencesi.
  • Orman dış güvenleri

WebSphere Application Serveriçin kimlik doğrulama mekanizması olarak Kerberos ' un ayarlanması

You must perform the steps in order as listed in Kerberos , WebSphere Application Serveriçin kimlik doğrulama mekanizması olarak ayarlanıyor to set up Kerberos as the authentication mechanism for WebSphere Application Server.
Sunucu tarafındakiNot: Kerberos kimlik doğrulama mekanizmasının sistem yöneticisi ve Java istemcisi tarafında kullanıcılar tarafından yapılması gerekir. Kerberos anahtar etiketi dosyası korunmalıdır.

Setting up Kerberos as the authentication mechanism for the pure Java client

Son kullanıcılar salt Java istemcisi için isteğe bağlı olarak Kerberos kimlik doğrulama mekanizmasını ayarlayabilir. Ek bilgi için Kerberos kimlik doğrulaması için Java istemcisi yapılandırılması hakkında bilgi edinin.

[8.5.5.19 ya da sonraki sürümü]

Kerberos , LDAP için bağ tanımlama kimlik doğrulama mekanizması olarak ayarlanıyor

LDAP sunucusuna bağlanmayı ve kullanıcı ve grup aramaları yapmak için bağ tanımlama kimlik doğrulama düzeneği olarak Kerberos ' u ayarlayabilirsiniz. Bu bağ tanımlama doğrulama düzeneği, bir bağ tanımlama ayırt edici adı ve bir bağ tanımlama parolası kullanan basit bağ tanımlama kimlik doğrulama mekanizmasının alternatifi.

To configure Kerberos as the bind authentication mechanism for LDAP servers in federated repositories, complete the steps in the topic about configuring LDAP in a federated repository configuration.

Kerberos ' u bağımsız bir LDAP sunucusu için bağ tanımlama kimlik doğrulama mekanizması olarak yapılandırmak üzere, LDAP kullanıcı kayıt dosyalarının yapılandırılmasıyla ilgili konudaki adımları tamamlayın.