3 min read

Keycloak ile LDAP Entegrasyonu

keycloak-ldap-cpynet
keycloak-ldap-cpynet

Keycloak'ı mevcut kullanıcı dizinleriyle entegre etmek için LDAP (Lightweight Directory Access Protocol) kullanabilirsiniz. Bu entegrasyon, kurum içi kullanıcıların yönetimi ve kimlik doğrulaması için oldukça faydalıdır. Bu dokümanda, Keycloak ile LDAP entegrasyonu adımlarını ve örnek bir yapılandırmayı detaylı olarak ele alacağız.

Keycloak ile Active Directory ve OpenLDAP gibi LDAP servislerini nasıl entegre edeceğinizi öğrenerek kullanıcı yönetimini merkezi hale getirebilirsiniz.


Keycloak ve LDAP Entegrasyonu Nedir?

Keycloak, kimlik ve erişim yönetimi sağlayan bir açık kaynak yazılımıdır. LDAP ile entegrasyon, kullanıcıların merkezi bir dizin üzerinden yönetilmesini sağlar. Bu sayede, kullanıcı veritabanınızı (Active Directory, OpenLDAP vb.) Keycloak'a bağlayarak kullanıcıların giriş yapmasını, kimlik doğrulama işlemlerini ve rollerini merkezi olarak kontrol edebilirsiniz.


LDAP Nedir ve Nerelerde Kullanılır?

LDAP (Lightweight Directory Access Protocol), dizin tabanlı verileri düzenlemek ve yönetmek için kullanılan hafif bir protokoldür. Özellikle büyük şirketler, Active Directory ve OpenLDAP gibi dizin hizmetleriyle kullanıcı hesapları, cihazlar ve gruplar gibi bilgileri merkezi bir sistemde yönetir.


Keycloak ile LDAP Entegrasyonu İçin Gereksinimler

  • Keycloak: Kurulu ve çalışır durumda olmalı.
  • LDAP Sunucusu: Active Directory, OpenLDAP gibi bir LDAP sunucusu.
  • Keycloak Yönetici Hesabı: Keycloak yönetici paneline giriş için gerekli yönetici hesabı.

1. Keycloak LDAP Bağlantı Yapılandırması

İlk adımda, Keycloak’ın LDAP sunucusuna bağlanması için gerekli yapılandırmayı yapacağız. LDAP entegrasyonunu başlatmak için aşağıdaki ayarları girmeniz gerekiyor:

  • Connection URL:
ldap://ldap.cpynet.com:389

(SSL kullanıyorsanız, ldaps://ldap.cpynet.com:636 kullanabilirsiniz.)

  • Bind DN: LDAP sunucusuna bağlanmak için kullanılan yönetici hesap bilgileri. Örneğin:
CN=Administrator,CN=Users,DC=cpynet,DC=com
  • Bind Credential (Password): Bind DN ile ilişkili parolayı girin:
admin-password

2. Kullanıcı Dizini Ayarları

Keycloak, LDAP sunucusundaki kullanıcıları almak için belirli bir dizinde arama yapar. Bu dizin, kullanıcıların LDAP'da saklandığı yerdir. Örneğin:

  • Users DN:
OU=Users,DC=cpynet,DC=com

3. LDAP Benzersiz Kimlik (UUID) Ayarı

Her kullanıcı LDAP'da benzersiz bir kimlik numarasıyla tanımlanır. Bu, genellikle entryUUID veya objectGUID gibi alanlarda saklanır.

  • UUID LDAP Attribute:
entryUUID

4. LDAP Arama Alanı (Search Scope)

LDAP dizininde kullanıcı arama alanını belirleyebilirsiniz. Eğer kullanıcılar alt dizinlerde bulunuyorsa, taramanın tüm alt dizinlerde yapılması gerekir.

  • Search Scope:
Subtree

Bu ayar, kullanıcıları belirtilen dizinin altındaki tüm alt dizinlerde arar.


5. LDAP Sunucu Türü

Keycloak'ın LDAP entegrasyonunda kullanacağınız LDAP sunucu türüne göre ayar yapmanız gerekmektedir. Bu örnekte Active Directory kullanıldığı için:

  • Vendor:
Active Directory

Eğer başka bir LDAP sunucusu kullanıyorsanız (örneğin OpenLDAP), Other seçeneğini kullanabilirsiniz.


6. Örnek Keycloak LDAP Yapılandırma Dosyası

Aşağıda, tüm ayarları bir arada bulabilirsiniz. Bu yapılandırma dosyasını Keycloak yönetim panelinde User Federation altında LDAP sağlayıcısı eklerken kullanabilirsiniz.

  • Edit Mode: READ_ONLY
  • Vendor: Active Directory
  • Connection URL: ldap://ldap.cpynet.com:389
  • Bind DN: CN=Administrator,CN=Users,DC=cpynet,DC=com
  • Bind Credential: admin-password
  • Users DN: OU=Users,DC=cpynet,DC=com
  • UUID LDAP Attribute: entryUUID
  • Search Scope: Subtree
  • Use Truststore SPI: ldapsOnly (Eğer SSL kullanıyorsanız)
  • Pagination: true
  • Batch Size for Sync: 1000
  • Allow Kerberos Authentication: false

Sonuç

Keycloak ile LDAP entegrasyonu, mevcut kullanıcı dizinlerinizi merkezi bir yönetim aracı üzerinden kullanmanızı sağlar. Bu rehberde, Keycloak ile LDAP entegrasyonunun nasıl yapılandırılacağını adım adım açıkladık ve örnek bir yapılandırma sunduk. Bu yapılandırmayı kullanarak, LDAP kullanıcılarınızı Keycloak’a kolayca entegre edebilir ve kimlik doğrulama işlemlerini merkezi hale getirebilirsiniz.