LDAP Active Directory
"Project Owner" gibi "Kimlik Doğrulama Hizmetlerini Yönet" yetkisine sahip roller tarafından erişilebilir ve yönetilebilir.
LDAP ile kullanıcı doğrulama bağlantı ayarlarını içeren görsele aşağıda yer verilmiştir:
LDAP ile kullanıcı doğrulama bağlantı ayarları için kullanılan alanlar aşağıdaki tabloda görülmektedir.
| Alan | Açıklama |
|---|---|
| Ad | Oluşturulan Kimlik Sağlayıcısı için LDAP/Active Directory Kimlik Sağlayıcı adı bilgisidir. |
| Açıklama | Oluşturulan LDAP/Active Directory Kimlik Sağlayıcı ile ilgili yönetimi kolaylaştırmak için açıklama yazılabilir. |
| LDAP Bağlantı Havuzu Tanımları (LDAP Connection Pool Definition) | LDAP bağlantısının alınacağı havuz seçilir ya da oluşturulur. |
| Kimlik Doğrulama Tipi (LDAP Authentication Type) | LDAP/Active Directory ile Kimlik Sağlayıcı yapılırken iki yöntemden birisi kullanılabilir: 1. Basit Kimlik Doğrulama: Kullanıcı adı/parola çifti LDAP sunucusuna gönderilir, böyle bir kullanıcı olup olmadığı kontrol edilir. 2. Gelişmiş Kimlik Doğrulama: Kullanıcı adı/parola çifti kullanılarak kullanıcının üyelikleri, yetkileri gibi özellikleri kullanılır. |
| Kullanıcı Adı İfadesi (User Configuration Expression) | Kimlik Doğrulama Tipi, Basit Kimlik Doğrulama olarak seçildiğinde Kullanıcı Adı İfadesi girilir. İstek mesajı içinde gelen kullanıcı adı, aşağıdaki ifadede {{username}} yerine yerleştirilerek doğrulanır. Buna göre, aşağıdaki ifadeyi istek mesajı içinde gelecek kullanıcı adının yapısına göre LDAP arama kriterini oluşturacak şekilde girmelisiniz.Örnek olarak, kullanıcı1 adını kullanan bir kullanıcının LDAP sunucusundaki DN değeri uid={{username}},ou=People,dc=example,dc=com olsun.Örnek 1: İstek mesajı içinde kullanıcı adı olarak "kullanıcı1" değeri geliyorsa ifade şöyle yazılmalıdır: uid={{username}},ou=People,dc=example,dc=comÖrnek 2: İstek mesajı içinde kullanıcı adı olarak "uid=kullanıcı1" değeri geliyorsa ifade şöyle yazılmalıdır: {{username}},ou=People,dc=example,dc=comÖrnek 3: İstek mesajı içinde kullanıcı olarak "uid=kullanıcı1,ou=People,dc=example,dc=com" değeri geliyorsa ifade şöyle yazılmalıdır: {{username}} |
| Kullanıcı Sınıfı Tanımları (User Object Class Definition) | Kimlik Doğrulama Tipi, Gelişmiş Kimlik Doğrulama olarak seçildiğinde Kullanıcı Sınıfı Tanım(lar)ı oluşturulur. |
| Grup Sınıfı Tanımları (Group Object Class Definition) | Kimlik Doğrulama Tipi, Gelişmiş Kimlik Doğrulama olarak seçildiğinde Grup Sınıfı Tanım(lar)ı oluşturulur. |
| Variable Butonu (Variable) | Sayfanın üst kısmındaki [<> Variable] butonu ile alanlara dinamik değer seçilebilir. Detaylı bilgi için Dinamik Değişkenler sayfasını inceleyebilirsiniz. |
Hazır Ayar Uygula
Ekranın üst kısmındaki Hazır Ayar Uygula menüsü, seçtiğiniz dizin türünün önerilen alan değerlerini gösterir. Bu değerler aşağıdaki Kullanıcı Sınıfı Tanımı ve Grup Sınıfı Tanımı alanlarına yazılır. Seçenekler:
- Active Directory
- OpenLDAP
- 389 Directory Server / FreeIPA
- Active Directory (gruplar organizasyon birimi olarak tutuluyor)
Hazır ayar uygulamak kayıt yapmaz. Önerilen değerler, alanlardaki önceki değerlerin yerini alır. Değerleri gözden geçirin. Kaydetmeden önce hiçbir şey değişmez.
Gelişmiş Ayarlar - Kullanıcı Sınıfı Tanımı
LDAP ile kullanıcı doğrulama bağlantı ayarlarında gelişmiş ayarlardan Kullanıcı Sınıfı Tanımı ayarlarını içeren görsele aşağıda yer verilmiştir:
LDAP ile kullanıcı doğrulama bağlantı ayarlarında gelişmiş ayarlardan Kullanıcı Sınıfı Tanımı için kullanılan alanlar aşağıdaki tabloda görülmektedir.
| Alan | Açıklama |
|---|---|
| Kullanıcı Sınıfı Adı (User Object Class Definition) | Kullanıcıları filtrelemek için kullanılacak sınıf adı girilir. Varsayılan değeri: inetOrgPerson |
| Custom Filter Niteliği (Custom Filter Attribute) | Kullanıcıları getirme esnasında bağlantıdaki filtreye ek olarak kullanılabilecek filtre değeri girilir. Örn: (&(objectCategory=Person)(sAMAccountName=*)) |
| User Base DN Niteliği (User Base DN Attribute) | Bu değer dolu ise bağlantıdaki Base DN yerine, kullanıcıları ararken ve yüklerken bu Base DN kullanılır. Hiçbir değer sağlanmazsa bağlantıdaki Base DN geçerli olur. Örn: cn=users,dc=ad,dc=example,dc=com |
| Arama Kapsamı (Search Scope) | Arama işleminin base DN üzerinde hangi seviyede yapılacağını belirtir. |
| Tam Ad Niteliği (Full Name Attribute) | Kullanıcının tam adını bulmak için kullanılacak niteliğin adı girilir. Varsayılan değeri: cn |
| Giriş Adı/Kullanıcı Adı Niteliği (Login Name Attribute) | Kullanıcının sisteme girişi için kullanılacak niteliğin (login name) adı girilir. Varsayılan değeri: uid |
| Ad Niteliği (First Name Attribute) | Kullanıcının adını belirten niteliğin adı girilir. Varsayılan değeri: givenName |
| Soyad Niteliği (Last Name Attribute) | Kullanıcının soyadını belirten niteliğin adı girilir. Varsayılan değeri: sn |
| E-Posta Niteliği (E-mail Attribute) | Kullanıcının e-posta adresini belirten niteliğin adı girilir. Varsayılan değeri: mail |
| Üyelik Niteliği (Membership Attribute) | Kullanıcının grup üyeliklerini belirten niteliğin adı girilir. Varsayılan değeri: isMemberOf |
| Alınacak Nitelikler (Attributes To Fetch) | LDAP ile kimlik doğrulama yapıldığında, kimlik doğrulamanın yanı sıra kullanıcı hakkında hangi bilgilerin alınacağını belirtir. LDAP Authentication Provider sayfasında, Advanced Settings (Gelişmiş Ayarlar) seçeneği etkinleştirildiğinde, "Attributes to Fetch" (Alınacak Nitelikler) alanı belirir. Bu alana girilen nitelikler, LDAP kullanıcısında mevcutsa, değerleriyle birlikte alınır ve: • Eğer LDAP provider JWT üretiminde kullanılıyorsa, bu nitelikler ve değerleri (null olanlar hariç) JWT'nin içine claim olarak eklenir. • LDAP provider, plaintext, basic veya digest yetkilendirme yöntemlerinde kullanılıyorsa, bu nitelikler ve değerleri, message context'ine custom variable olarak eklenir. Bu sırada key değerinin başına #clientLDAPAttribute#. prefix'i eklenir. Örneğin, LDAP üzerinden mail niteliği alınmışsa, key değeri #clientLDAPAttribute#mail, value değeri ise dummy@dummy.com şeklinde olur. |
| Hesap Durumu Niteliği | Hesabın dizinde kapatılıp kapatılmadığını belirten niteliğin adıdır. Örnek: Active Directory'de userAccountControl, OpenLDAP'ta pwdAccountLockedTime, 389 Directory Server / FreeIPA'da nsAccountLock. Boş bırakılırsa hesap durumu okunmaz ve senkronizasyon hiçbir tüketiciyi pasifleştirmez. |
| Hesap Durumu Biçimi | Hesap Durumu Niteliği'nin değerinin nasıl yorumlanacağını belirler: Active Directory bit maskesi (userAccountControl), değer "true" ise hesap kapalı, nitelik var olduğu sürece hesap kapalı (kilit zamanı) veya 389 Directory / FreeIPA kilidi (nsAccountLock). Yanlış biçim seçmek hata vermez; kilitli bir hesabı sessizce "açık" gösterebilir. |
Hesap Durumu Niteliği yapılandırıldığında, dizinde devre dışı bırakılan bir hesap senkronizasyon ile Apinizer'da da pasifleşir; hesap dizinde yeniden etkinleştirildiğinde kendiliğinden tekrar açılır. Yöneticinin Apinizer üzerinden elle pasifleştirdiği bir tüketiciye senkronizasyon dokunmaz.
Gelişmiş Ayarlar - Grup Sınıfı Tanımı
LDAP ile kullanıcı doğrulama bağlantı ayarlarında gelişmiş ayarlardan Grup Sınıfı Tanımı ayarlarını içeren görsele aşağıda yer verilmiştir:
LDAP ile kullanıcı doğrulama bağlantı ayarlarında gelişmiş ayarlardan Grup Sınıfı Tanımı için kullanılan alanlar aşağıdaki tabloda görülmektedir.
| Alan | Açıklama |
|---|---|
| Grup Sınıfı Adı (Group Object Class Name) | Grupları filtrelemek için kullanılacak sınıf adı girilir. Varsayılan değeri: groupOfUniqueNames |
| Custom Filter Niteliği (Custom Filter Attribute) | Gruplar alınırken bağlantıdaki filtreye ek olarak kullanılabilecek filtre değeridir. |
| Group Base DN Niteliği (Group Base DN Attribute) | Bu alanda değer varsa bağlantıda Base DN yerine grup aranırken ve yüklenirken bu Base DN kullanılır. Hiçbir değer sağlanmazsa bağlantıdaki Base DN geçerli olur. |
| Arama Kapsamı (Search Scope) | Arama işleminin base DN üzerinde hangi seviyede yapılacağını belirtir. |
| Grup Adı Niteliği (Group Name Attribute) | Grup adını tutan niteliğin adını girilir. |
| Grup Üyeliği Niteliği (Member Attribute) | Grup üyelerini tutan niteliğin adını girilir. |
| Grup Üyeliği Belirleme Niteliği (Member Strategy) | Grup üyelerini belirlemek için kullanılacak yöntem seçilir. Varsayılan değeri: USER DNAlabileceği değerler: • USER DN • USER LOGIN Aşağıdaki Üyelik nasıl belirlenir? seçeneği "Mevcut davranış" dışında bir değere ayarlandığında bu alan kullanılmaz: üye değerinin ayırt edici ad mı yoksa kullanıcı adı mı olduğu her değer için otomatik olarak tespit edilir. |
| Üyelik nasıl belirlenir? | Kullanıcının kuruma nasıl bağlanacağını belirler. Seçenekler: • Mevcut davranış (varsayılan) — bu kurulumda bugün nasıl okunuyorsa öyle okunmaya devam eder; yukarıdaki Grup Üyeliği Belirleme Niteliği alanı bu seçimde geçerlidir. • Otomatik bul (önerilen) — önce kullanıcı ve grup üzerindeki üyelik listeleri denenir; ikisi de boş dönerse kullanıcının bulunduğu klasör (OU) kullanılır. • Üyelikler kullanıcının üzerinde listelenir (memberOf) — yalnızca kullanıcı kaydının üzerindeki grup listesi okunur. • Üyeler grubun üzerinde listelenir (member) — yalnızca grup kaydının üzerindeki üye listesi okunur. • Gruplarımız OU'dur; kullanıcı bulunduğu OU'nun üyesidir — üye listesi yoktur; kullanıcı, içinde bulunduğu klasörün (OU) üyesi sayılır. • Hem OU hem grup — kurum kullanıcının bulunduğu OU'dan gelir, roller ise bütün üyelik listelerinden toplanır. Emin değilseniz olduğu gibi bırakın ya da Otomatik bul'u seçin; bu seçim yalnızca üyeliklerin nasıl okunacağını değiştirir, dizininizde hiçbir şey değişmez. |
| Ek Olarak Okunacak Nitelikler | Her gruptan ek olarak okunacak niteliklerdir. Grup yeniden adlandırıldığında ya da taşındığında değişmeyen bir nitelik eklerseniz (Active Directory'de objectGUID, OpenLDAP ve 389 Directory Server / FreeIPA'da entryUUID) kurum, limitleri ve üyeleriyle birlikte aynı kayıt üzerinde kalır. Boş bırakılırsa gruplar bugünkü gibi okunur. |
Bu alan olmadan adı değişen veya taşınan bir grup yeni bir kayıt sayılır: eski kurum pasifleşir, yenisi açılır ve kurum ile limit bağları kopar.
Bağlantıyı Test Et (Adım Adım)
Ekranın üst kısmındaki Bağlantıyı test et (adım adım) butonu, kaydetmeden önce bağlantıyı 12 ayrı adımda ölçer. Her adım ayrı sonuçlanır. Böylece sorunun tam olarak nerede koptuğu görülür. Eski tek sonuçlu Konfigürasyonu Test Et akışı da korunur.
| # | Adım | Ne kontrol eder |
|---|---|---|
| 1 | Yapılandırma Kontrolü | Form alanlarının tutarlılığı (adres biçimi, TLS seçenekleri, zorunlu alanlar) |
| 2 | Sunucu Bağlantısı | LDAP sunucusuna ağ üzerinden ulaşılabiliyor mu |
| 3 | Güvenli Bağlantı (TLS) | LDAPS/StartTLS el sıkışması |
| 4 | Servis Hesabı Girişi | Bağlantıdaki servis hesabı ile oturum açma |
| 5 | Dizin Bilgisi | Sunucunun kendi bildirdiği dizin türü ve ağaç kökleri |
| 6 | Şema Kontrolü | Yapılandırılan nesne sınıfı ve nitelik adlarının dizin şemasında var olup olmadığı |
| 7 | Başlangıç Noktası (Base DN) | Aramaların başlayacağı kökün okunabilirliği |
| 8 | Kullanıcı Arama | Yapılandırılan kullanıcı filtresiyle en az bir kayıt dönüp dönmediği |
| 9 | Grup Arama | Yapılandırılan grup filtresiyle en az bir kayıt dönüp dönmediği |
| 10 | Attribute Yetkileri | Servis hesabının istenen niteliklerin tümünü görüp göremediği |
| 11 | Üyelik Çözümleme | Örneklenen kullanıcıların yapılandırılan üyelik moduyla bir kuruma bağlanıp bağlanmadığı |
| 12 | Sayfalı Arama Desteği | Sunucunun büyük sonuç kümelerini sayfa sayfa döndürüp döndüremediği |
Her satırda durum rozetinin yanında bir açıklama, bir öneri ve kopyalanabilir bir teknik ayrıntı görüntülenir. Bir attribute dizinin şemasında tanımlı değilse veya servis hesabı bu niteliği göremiyorsa ilgili adım bunu ayrı ayrı bildirir.
Dizin Önizleme
Dizin önizleme butonu, formdaki mevcut değerlerle dizini okur. Senkronizasyonun ne üreteceğini gösterir; hiçbir kayıt yazılmaz. Dört sekmesi vardır:
- Kullanıcılar — kullanıcı adı, ad soyad, e-posta, ayırt edici ad (DN), bağlanacağı kurum, bu bağın kaynağı (kullanıcı alanı / grup üye listesi / organizasyon birimi) ve okunan alanlar listelenir.
- Gruplar — ad, ayırt edici ad (DN), türü (grup ya da organizasyon birimi), üye sayısı ve üye değerlerinin biçimiyle listelenir.
- Üyelik — hangi kullanıcının hangi grup/organizasyon birimine bağlandığını gösteren matristir; yalnız bağlanmayan kullanıcıları filtreleyebilirsiniz.
- Sorunlar — aşağıdaki Sorunlar listesindeki maddelerden hangilerinin bu dizinde geçerli olduğunu gösterir; bazı maddelerde Uygula ile öneri doğrudan forma yazılır.
Önizlemenin Tam tarama (deneme koşusu) seçeneği dizinin tamamını sayfalayarak tarar ve senkronizasyonun oluşturacağı, güncelleyeceği, pasifleştireceği ve kuruma bağlanmadan bırakacağı kayıt sayılarını raporlar — bu da yazma yapmaz.
Açıkla
Açıkla ekranı, tek bir kullanıcının dizinde nasıl bulunduğunu ve üyeliğinin nasıl çözüldüğünü adım adım gösterir: bir kullanıcı adı girilir, isteğe bağlı olarak bir parola da girilebilir.
Sırasıyla gösterilenler:
- Kullanıcının hangi arama filtresiyle bulunduğu ve dizinden okunan ham nitelikler (servis hesabının görebildiği ölçüde)
- Kullanıcı kaydından gelen üyelik, grup üye listelerinden gelen üyelik ve organizasyon birimi ağacından gelen üyelik — her biri kullanılan filtre ve sonucuyla, ayrı adımda
- Kullanılan sonuç: hangi kaynağın geçerli sayıldığı ve bağlanılan kurum
- Bu kullanıcı yönetim konsoluna girseydi hangi projelerde üye olacağının simülasyonu
- Bu kullanıcı bir API çağırsaydı hangi tüketici kaydıyla eşleşeceğinin, kurumunun ve etkin limit atamalarının simülasyonu
- Hesap durumu (yapılandırılmışsa)
Parola girilirse ayrıca bir oturum açma denemesi de yapılır; parola hiçbir yerde saklanmaz ve gösterilmez.
Sorunlar
Dizin Önizleme'nin Sorunlar sekmesinde ve Açıkla ekranında aşağıdaki kodlarla karşılaşabilirsiniz:
| Kod | Anlamı | Ne Yapmalı |
|---|---|---|
| I01 | Okunan kullanıcıların hiçbirinde üyelik niteliği yok — dizininiz grup üyeliğini kullanıcı kaydında hiç yayımlamıyor olabilir. | Active Directory'de bu nitelik genellikle memberOf'tur. Dizininiz üyeliği kullanıcı kaydında hiç yayımlamıyorsa Üyelik nasıl belirlenir? seçimini grup üye listesini veya organizasyon birimi ağacını kullanan bir moda değiştirin. |
| I02 | Grup üye değerlerinin biçimi (ayırt edici ad / kullanıcı adı) yapılandırılan strateji ile uyuşmuyor. | Üyelik nasıl belirlenir? seçimini Otomatik bul olarak değiştirin; her üye değerinin biçimi böylece kendiliğinden tespit edilir. |
| I03 | Okunan grupların bir kısmı organizasyon birimi ve üye listesi taşımıyor. | Bu düzende kullanıcı, içinde bulunduğu organizasyon biriminin üyesi sayılır. Üyelik nasıl belirlenir? seçimini Gruplarımız OU'dur; kullanıcı bulunduğu OU'nun üyesidir olarak ayarlayın. |
| I04 | Üye değerlerinin hiçbiri okunan kullanıcılarla eşleşmiyor. | Kullanıcı arama kökü ile gruplar muhtemelen ağacın farklı bölümlerine bakıyor, ya da kullanıcı adı niteliği üye değerlerindeki biçimle uyuşmuyor; Base DN ve nitelik eşleşmesini kontrol edin. |
| I05 | Grup nesne sınıfıyla yapılan aramadan hiç kayıt dönmedi. | Grup nesne sınıfını ve grup arama kökünü kontrol edin; gruplarınız organizasyon birimiyse organizationalUnit kullanın. |
| I06 | Sunucu sayfalı arama sonuçlarını desteklemiyor; büyük listeler eksik gelebilir. | Senkronizasyon yalnızca ilk sayfayı okuyabilir; bazı kullanıcılar eksik kalır ve kayıtlar doğru uzlaştırılmaz. Dizin sunucusunda sayfalı sonuç desteğini etkinleştirin. |
| I07 | Okunan kullanıcıların bir kısmında giriş adı niteliği boş. | Kullanıcı adı bu nitelikten alınır. Active Directory'de bu genellikle sAMAccountName'dir; Giriş Adı/Kullanıcı Adı Niteliği alanını kontrol edin. |
| I08 | Dizin, arama sırasında bir yönlendirme (referral) döndürdü; bazı kayıtlar başka bir sunucuda olabilir. | Bağlantıyı, ağacın tamamını tutan bir sunucuya yönlendirmeyi değerlendirin. |
| I09 | Active Directory'de kullanıcının birincil grubu kullanıcı kaydında listelenmez — bu normaldir. | Bu normaldir, ek işlem gerekmez; Domain Users gibi bir grupta eksik görünen kullanıcı bu durumdan etkilenir. |
| I10 | Bir üye değeri başka bir grubu gösteriyor (iç içe grup); iç gruptaki üyeler henüz dış grubun üyesi sayılmaz. | İç içe gruplar tespit edilir, ama henüz çözülmez: iç gruptaki üyeler dış grubun üyesi sayılmaz. |
| I11 | Kararlı kimlik niteliği (objectGUID/entryUUID) okunacak nitelikler listesinde yok; adı değişen veya taşınan kayıt yeni bir kişi sayılabilir. | Ek Olarak Okunacak Nitelikler alanına Active Directory'de objectGUID, OpenLDAP ve 389 Directory Server / FreeIPA'da entryUUID ekleyin. |
| I12 | Yapılandırılan bir nesne sınıfı veya nitelik adı dizin şemasında tanımlı değil. | Sunucu, tanımadığı bir niteliği sessizce yok sayar. Yazımı ve niteliğin başka bir dizin ürününe ait olup olmadığını kontrol edin. |
| I13 | İstenen bazı nitelikler okunan kullanıcıların hepsinde boş döndü — servis hesabının bunları görme yetkisi olmayabilir. | Servis hesabının bu nitelikleri görme yetkisi muhtemelen yok; bağlantıda kullanılan hesabın erişim haklarını kontrol edin. |
Her sorunun yanında bir öneri bulunur. Bazılarında Uygula ile öneri doğrudan forma yazılır. Öneriyi gözden geçirin, sonra kaydedin.
Bu Sağlayıcı Nasıl Çalışır
Düzenleme ekranının üst kısmındaki akış şeridi, bu kaynağın çalışma sırasını altı adımda özetler: Bağlan → Bind → Kullanıcılar → Gruplar → Üyelik → Senkronizasyon. Bir adıma tıklamak sizi ilgili bölüme götürür.
Senkronizasyon
LDAP düzenleme ekranındaki LDAP Synchronization Profile sekmesi ile bu kaynaktaki kullanıcıları (ve bağlı kurum ağacını) Kimlik Bilgisi kayıtlarına senkronize edebilirsiniz. Alan açıklamaları, zamanlama ve izleme için Kimlik Bilgisi Senkronizasyonu sayfasını inceleyebilirsiniz.
Senkronizasyon bölümünde bir Etkin / Kapalı rozeti, Senkronize Et düğmesi (kapsam menüsüyle: Tam / Yalnız kullanıcı / Yalnız grup) ve bir Yenile düğmesi bulunur. Son koşunun özeti şu sayaçları gösterir:
| Sayaç | Anlamı |
|---|---|
| Okunan Kullanıcı | Bu koşuda dizinden okunan toplam kullanıcı sayısı |
| Üyelik Alanı Olan | Kendi kaydında üyelik niteliği (örn. memberOf) taşıyan kullanıcı sayısı |
| Okunan Grup | Bu koşuda okunan toplam grup/organizasyon birimi sayısı |
| Üyesi Olan Grup | Üye niteliği boş olmayan grup sayısı |
| Elenen Grup | Senkronizasyon kapsamı filtresinin elediği grup sayısı |
| Bağlanan (S1) | Kendi kaydındaki üyelik alanından kuruma bağlanan kullanıcı sayısı |
| Bağlanan (S2) | Grubun üye listesinden kuruma bağlanan kullanıcı sayısı |
| Bağlanan (S3) | Bulunduğu organizasyon biriminden kuruma bağlanan kullanıcı sayısı |
| Bağlanamayan | Hiçbir kaynağın kuruma bağlayamadığı kullanıcı sayısı |
| Yeniden Etkinleştirilen | Kaynakta yeniden göründüğü için bu koşuda otomatik olarak açılan kayıt sayısı |
Bu sayaçlar aynı zamanda Senkronizasyon Koşu Geçmişi tablosunda satır başına da görünür; bu sürümden önce
kaydedilmiş koşularda ilgili sütunlar boş (-) görüntülenir. Özetin yanındaki Sorunları gör
bağlantısı o koşuya ait hata ve uyarı listesini açar.
İki farklı LDAP kaynağı aynı dizin girdisini (aynı DN'i) içeriyorsa, bir kaynaktaki senkronizasyon diğer kaynağın kurum kaydını güncellemez — her kaynağın kurum kaydı yalnızca o kaynağa aittir; iki dizinde de bulunan bir grup, her kaynakta ayrı ayrı korunur ve uzlaştırılır.
Dizinde yeniden görünen ve daha önce yalnızca senkronizasyon tarafından pasifleştirilmiş bir kullanıcı, sonraki koşuda kendiliğinden yeniden etkinleştirilir. Yöneticinin Apinizer üzerinden elle pasifleştirdiği bir kullanıcıya senkronizasyon dokunmaz.
Destek Paketi
Kimlik Bilgisi Senkronizasyonu ekranındaki kaynak satırından Destek paketi indirebilirsiniz. Bu, bu LDAP kaynağının anonimleştirilmiş bir teşhis arşividir: dizin adları, kullanıcı adları ve e-posta adresleri hash ile değiştirilir, parola pakete hiçbir zaman girmez. Bağlantının Teşhis Modu açıkken tekrarlanan bir sorun, LDAP işlem kayıtlarıyla birlikte pakete girer — bkz. LDAP/Active Directory Bağlantı Yönetimi.
Senkronizasyon Kapsamı
Hangi kayıtların senkronize edileceğini filtrelemek için kullanılan Eşleştirilen Alan seçeneklerine örnekler aşağıdadır:
| Eşleştirilen Alan | Örnek |
|---|---|
| Kullanıcı Adı | svc-* |
| E-posta | *@example.com |
| Yol (DN / grup yolu) | /Groups/* — DN sağdan sola okunur, /Eng/Dev biçiminde yazılır ve dc= bileşenleri atılır |
| Ad | developers |
Deseni dene kutusu, örnek bir değeri geçerli desenlere göre değerlendirir. Bu sırada hiçbir şey kaydedilmez ve dizine sorgu gönderilmez.
Grup ve organizasyon kapsam filtreleri artık senkronizasyon sırasında uygulanır: filtre dışında kalan
bir grup organizasyon olarak oluşturulmaz. Kapsam dışına çıkan mevcut bir organizasyon silinmez veya
pasifleştirilmez, dokunulmadan bırakılır. Yıldız (*) veya soru işareti (?) içermeyen düz bir desen
artık senkronizasyon sırasında hatalı biçimde reddedilmez.
Senkronizasyon Davranışları
- Kaynak dizinde aynı oturum açma adını taşıyan iki kayıt varsa ikincisi atlanır ve bir sorun olarak kaydedilir; ilk kayıt korunur.
- Aynı ayırt edici ada (DN) sahip bir organizasyon zaten elle oluşturulmuş bir kayıt olarak varsa, senkronizasyon kopya bir organizasyon oluşturmaz. Kullanıcıları var olan organizasyona bağlar ve bir sorun kaydeder; organizasyon siz devralana kadar elle yönetimde kalır.
- Zamanlanmış görev kaydedilemiyorsa (örneğin geçersiz bir cron ifadesi), hata kaydettiğiniz anda gösterilir; bir sonraki koşuda sessizce başarısız olmaz.
- Başarısız olan ya da kullanıcıları bir organizasyona bağlayamayan bir koşu, Sorunları gör bağlantısından incelenebilecek bir sorun üretir.
Apinizer, senkronizasyon sırasında dizini LDAP PagedResults kontrolüyle sayfa sayfa okur (sayfa başına 500 kayıt). Dizin sunucusu bu kontrolü desteklemiyorsa ya da kullanılmasına izin vermiyorsa yalnızca ilk sayfa okunabilir. Bu durumda koşu Uyarı olarak raporlanır ve güvenlik gereği hiçbir kimlik bilgisi deaktif edilmez veya silinmez; okunabilen kayıtlar normal şekilde eklenir veya güncellenir. Aynı güvenlik önlemi, dizinden okunan tek bir kayıt bile dönüştürülemediğinde de uygulanır: koşu eksik sayılır ve devre dışı bırakma/silme atlanır. Tam senkronizasyon için dizin sunucusunda sayfalı sonuç desteğini etkinleştirin ya da sunucu tarafındaki kayıt sayısı (size) limitini yükseltin.
Dizin sunucusu sayfalı sonuçları destekliyor görünse bile, sayfalama duraksar ya da tekrar ederse aynı güvenlik önlemi geçerlidir — koşu yine eksik sayılır, devre dışı bırakma/silme yine atlanır.
Dizinin aramayı reddetmesi farklı raporlanır. Tanımlı Base DN dizinde yoksa ya da bağlanma hesabının o dalda arama yetkisi yoksa koşu, eksik okuma Uyarısıyla değil Başarısız durumuyla kapanır; gerekçe metni ilgili Base DN değerini yazar. İkisi de yöneticinin düzeltebileceği ayarlardır, bu yüzden sayfalamayı desteklemeyen bir sunucudan ayrı tutulur.
API İsteği Neden Reddedildi?
Bir API tüketicisi bu kaynak üzerinden doğrulanamadığında, isteğin ayrıntılı kaydında kimlik doğrulama hatasının nedeni görüntülenir: giriş başarısız, kullanıcı yok, gerekli rol eksik ya da dizine erişilemiyor. Dizine hiç ulaşılamadığı durumlarda istek, kullanıcı adı/şifre hatalıymış gibi değil, hizmete o an erişilemediğini belirten ayrı bir hata ile reddedilir. Bkz. API Trafiği Sekmesi.
Sorun Giderme
Kullanıcılar ve gruplar geliyor ama kullanıcı-kurum/grup bağı boş
- Açıkla ekranını kullanıcı adıyla çalıştırın; hangi üyelik kaynağının (kullanıcı alanı / grup üye listesi / organizasyon birimi) boş döndüğünü görün.
- Dizin Önizleme'nin Sorunlar sekmesinde I01, I02, I03 veya I04 kodlarını arayın.
- Üyelik nasıl belirlenir? seçimini kontrol edin: Active Directory'de genellikle
memberOfniteliği yeterlidir; gruplarınız organizasyon birimiyse Gruplarımız OU'dur; kullanıcı bulunduğu OU'nun üyesidir seçeneğini kullanın. - Bağlantının Teşhis Modu'nu açın, sonra senkronizasyonu ya da girişi tekrarlayın. LDAP işlem kayıtları geçici olarak ayrıntılı tutulur; böylece sorunun ne zaman oluştuğu görülür.
- Sorun sürüyorsa Kimlik Bilgisi Senkronizasyonu ekranından bu kaynağın Destek paketi'ni indirin.
- İndirilen paketi destek ekibine iletin.
Uyumluluk Matrisi
| Dizin | Durum |
|---|---|
| Active Directory 2012 R2 – 2025 (Samba AD dahil) | Test edilmiş |
| OpenLDAP 2.4 – 2.6 | Test edilmiş (memberOf overlay'i isteğe bağlıdır — yoksa üyelik kaynağı olarak grup üye listesi veya organizasyon birimi ağacı seçin) |
| 389 Directory Server / FreeIPA | İlgili hazır ayarla çalışması beklenir |
| Diğer standart LDAP dizinleri | Alanları elle doldurun ya da yukarıdaki en yakın hazır ayarı uygulayın. Sonra Dizin Önizleme ve Bağlantıyı Test Et adımlarıyla doğrulayın |
Geriye Uyumluluk
Mevcut kayıtlar Üyelik nasıl belirlenir? alanında "Mevcut davranış" seçili gelir ve kurum atamaları değişmez; yeni davranış yalnızca siz seçtiğinizde etkinleşir. API Manager yeni sürüme, API Gateway worker'ları henüz eski sürüme yükseltilmişken, worker'lar eski davranışla çalışmaya devam eder; worker'lar yeniden dağıtıldığında yeni davranışa geçilir.