Ana içeriğe geç

LDAP

Hafif Dizin Erişim Protokolü (Lightweight Directory Access Protocol)

Okunuşu
el-dap
Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/ldap

Kısaca

LDAP, bir kuruluşun kullanıcılarını, gruplarını ve cihazlarını tutan merkezi dizin servisinde arama ve güncelleme yapmaya yarayan açık bir protokoldür.

LDAP nedir?

Dizin (directory), sık okunmak için tasarlanmış bir veritabanıdır: kişiler, gruplar, bilgisayarlar ve yazıcılar için kayıtları klasörlere benzer bir ağaç yapısında saklar. Her kaydın uid=alice,ou=people,dc=example,dc=com gibi benzersiz bir ayırt edici adı (distinguished name, DN) ve mail ya da memberOf gibi nitelikleri vardır. 1990'ların başında X.500 dizinlerine daha hafif bir yoldan erişmek için geliştirilen LDAP, bu dizinlerle çalışmanın standart protokolüdür; güncel sürümü LDAPv3, RFC 4511 ve ilgili RFC'lerde tanımlanır.

İstemci bir LDAP sunucusuna bağlanır ve işlemler gönderir: kimlik doğrulamak için bind, (uid=alice) gibi bir filtreye uyan kayıtları bulmak için search, değiştirmek için de add, modify ya da delete. Düz LDAP 389 numaralı portta çalışır ve parolalar dahil her şeyi şifrelemeden gönderir; bu yüzden StartTLS ile korunmalı ya da yerine 636 numaralı portta çalışan LDAPS kullanılmalıdır. Yaygın sunucular arasında Microsoft Active Directory, OpenLDAP ve FreeIPA vardır.

LDAP'ı, her çalışanın ekibini ve giriş kartını da listeleyen bir şirket telefon rehberinde arama yapmanın yolu olarak düşünebilirsiniz. VPN'ler, Git sunucuları, CI sistemleri ve Linux makineleri gibi birçok araç şirket dizinine LDAP üzerinden bağlanır: bir kullanıcının parolasını bind ile denetler ve ne yapabileceğine karar vermek için gruplarını okur; böylece hesaplar tek bir yerden yönetilir.

LDAP sıklıkla Active Directory ve Kerberos ile karıştırılır. Active Directory, Microsoft'un dizin servisidir ve LDAP onunla konuşmak için kullanılan protokollerden biridir; Active Directory ayrıca kullanıcının kim olduğunu biletlerle kanıtlayan Kerberos'u kullanır, LDAP ise kullanıcı hakkındaki bilgileri sorgular. LDAP ile kimlik doğrulama tek oturum açma (SSO) da değildir: her uygulama kendi giriş formunu gösterir ve parolayı dizine karşı denetler; SAML ya da OpenID Connect ise kullanıcıları tek bir kimlik sağlayıcısına yönlendirir, o kimlik sağlayıcısı da hesaplarını çoğu zaman arka planda LDAP'tan okur.

Önemli noktalar

  • LDAP, dizin servislerinde arama ve güncelleme yapmaya yarayan bir protokoldür.
  • Kayıtlar bir ağaç oluşturur ve ayırt edici adlarla (DN) adlandırılır.
  • Uygulamalar parolaları denetlemek ve grup üyeliklerini okumak için LDAP bind kullanır.
  • 636 numaralı portta LDAPS ya da StartTLS kullanın; 389 numaralı porttaki düz LDAP şifrelenmez.
  • Active Directory, OpenLDAP ve FreeIPA'nın hepsi LDAP'ı destekler.

Örnek

ldapsearch ile dizinde arama yapmakbash
# Find Alice's entry and her groups, over an encrypted LDAPS connection
ldapsearch -H ldaps://ldap.example.com \
  -D "cn=app-reader,ou=services,dc=example,dc=com" -W \
  -b "ou=people,dc=example,dc=com" \
  "(uid=alice)" cn mail memberOf

# The result, in LDIF format:
# dn: uid=alice,ou=people,dc=example,dc=com
# cn: Alice Smith
# mail: alice@example.com
# memberOf: cn=developers,ou=groups,dc=example,dc=com

Sık sorulan sorular

LDAP ile Active Directory arasındaki fark nedir?

Active Directory, Microsoft'un Windows ağları için geliştirdiği dizin servisidir. LDAP ise dizinlerde sorgulama ve güncelleme yapmaya yarayan açık bir protokoldür; Active Directory de OpenLDAP ve FreeIPA gibi onu destekleyen birçok sunucudan biridir.

LDAP ile Kerberos arasındaki fark nedir?

LDAP kullanıcılar, gruplar ve cihazlar hakkındaki bilgileri saklar ve sorgular. Kerberos ise bilet vererek kimliği kanıtlar. Bir Windows etki alanında oturum açmak Kerberos'u kullanır; uygulamalar da ardından kullanıcının bilgilerini ve gruplarını bulmak için LDAP'ı kullanır.

LDAP güvenli mi?

Yalnızca şifrelendiğinde. Düz LDAP parolaları okunabilir biçimde gönderir; bu yüzden LDAPS ya da StartTLS kullanın, uygulamalara salt okunur servis hesapları verin ve LDAP injection'ı önlemek için arama filtrelerindeki kullanıcı girdisinin özel karakterlerini etkisizleştirin (escape).

İlgili sayfalar

Kaynaklar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar