Skip to main content
CID222 Docs

Active Directory ve LDAP

Cihazı dizininize bağlayın, kullanıcıları gruplardan ve OU'lardan içe aktarın ve dizin çalışmadığında da çalışan yerel bir acil erişim hesabı bulundurun.

  • Sürüm: 0.4
  • Rol: admin_user
  • Tür: görev

CID222'yi dizininize bağlayın ki kullanıcılar mevcut alan hesaplarıyla oturum açsın. İşi iki bölme yapar: Active Directory / LDAP bağlantıyı tutar, Dizin Senkronu ise kullanıcıları bir gruptan ya da kuruluş biriminden içe aktarır; böylece onlar hiç oturum açmadan önce rollerini belirleyebilirsiniz.

Neye ihtiyacım var?

Lisans
Any
Rol
admin_user

Ön koşullar

  • Cihaz ilk açılış sihirbazını tamamlamış olmalıdır.
  • Dizinde, kullanıcı alt ağacında arama yetkisi olan salt okunur bir servis hesabı bulunmalıdır.
  • Cihazdan en az bir alan denetleyicisine TCP 636 açık olmalıdır — bkz. Ağ ön koşulları.
  • Alan denetleyicisi, cihazınızın doğrulayabileceği bir sertifika sunmalı ya da doğrulanmamış bir LDAPS bağlantısını kabul etmelisiniz.
  • Parolasını bildiğiniz yerel bir yönetici hesabı bulunmalıdır. Dizin kesintisinde dizinle oturum açma başarısız olur; geri dönüş yolu yerel hesaptır.

Dizinle kimlik doğrulama her lisans katmanında bulunur ve süresi dolmuş bir lisanstan etkilenmez — onu kısıtlamak, yenilemeye gelen yöneticiyi dışarıda bırakırdı. Tek lisans etkileşimi, dizin yeni bir hesap oluşturmaya çalıştığında geçerli olan kullanıcı üst sınırıdır.

Dizine bağlanın

Dizin ayarlarını açın

Ayarlar → Active Directory / LDAP öğesini seçin.

Sayfa şunu yazar: Let users sign in with their directory accounts. Once connected, users are created automatically on first login. Connection kartındaki bir rozet Devre dışı, Henüz denetlenmedi, Erişilebilir ya da Erişilemiyor gösterir.

Dizin türünü seçin

Directory type alanını Active Directory ya da OpenLDAP yapın.

Bu seçim biçimsel değildir: cihazın kullanıcı adı saydığı özniteliği — Active Directory için sAMAccountName, OpenLDAP için uid — ve aramada kullandığı nesne süzgecini belirler. Ayrı bir kullanıcı adı özniteliği alanı yoktur.

Sunucu adresini girin

Server URL alanını tam bir LDAP URL'si yapın; örneğin ldaps://dc01.example.corp:636.

Ana makine, port ve aktarım bu tek alanda durur. TLS seçenekleri yalnızca ldaps:// URL'sine verilir; StartTLS yolu yoktur. Sertifika doğrulaması varsayılan olarak açıktır ve yalnızca cihazda LDAP_TLS_REJECT_UNAUTHORIZED değerini false yaparak kapatılır.

Servis hesabını verin

Bind DN (service account) alanını hesabın ayırt edici adı yapın — örneğin CN=svc-cid,OU=Service,DC=example,DC=corp — ve parolasını Bind password alanına yazın.

Parola saklanmadan önce AES-256-GCM ile şifrelenir ve API tarafından hiçbir zaman döndürülmez. Kaydedildikten sonra alanın yer tutucusu •••••••• (leave blank to keep current) olur.

Kullanıcı aramasını kapsamlayın

Base DN alanını kullanıcılarınızı tutan alt ağaç yapın, örneğin DC=example,DC=corp, ve User filter alanını denetleyin.

Süzgeç, Active Directory için (sAMAccountName={{username}}), OpenLDAP için (uid={{username}}) varsayılanını alır. {{username}}, kullanıcının oturum açarken yazdığıyla değiştirilir.

Grup üyeliğinin nasıl okunacağına karar verin

Group membership mode alanını memberOf (Active Directory) ya da group-search (OpenLDAP) yapın; isterseniz Admin group DN (optional) alanını da ayarlayın.

Dizinin yönetici grubuna koyduğu bir kullanıcı, her oturum açmada ve her eşitlemede admin_user rolünü alır. Boş bırakıldığında dizinden hiçbir rol verilmez.

Etkinleştirmeden önce test edin

Bağlantıyı test et öğesini seçin.

Başarı Connected. Found N+ user object(s) under the base DN. bildirir — sayı beşle sınırlıdır, dolayısıyla 5+ en az beş demektir. Başarısızlıkta dizinin kendi hata metni gösterilir.

Dizinle oturum açmayı etkinleştirin ve kaydedin

Enable directory authentication ayarını açın, Just-in-time provisioning ayarının açık kalıp kalmayacağına karar verin, sonra Kaydet öğesini seçin.

Bir bildirim LDAP configuration saved der. Anında sağlama açıkken, başarıyla bağlanan bilinmeyen bir kullanıcı adı için hesap o anda oluşturulur; kapalıyken yalnızca zaten hesabı olan kullanıcılar oturum açabilir.

Danger

Bind parolası, JWT_SECRET değerinden türetilen bir anahtarla şifrelenir. Bu gizli anahtarı değiştirmek saklanan parolayı çözülemez hâle getirir ve cihaz bunu size söylemek yerine bind işlemini boş parolayla dener. Her değişiklikten sonra Bind password alanını yeniden girin.

Warning

Kaydetmediğiniz bir URL'yi test etmek parolayı yeniden ister: kaydedilmiş parola yalnızca kaydedilmiş URL'ye gönderilir. Değiştirilmiş bir Server URL değerini test etmeden önce parolayı Bind password alanına yazın.

Bir gruptan ya da OU'dan kullanıcı içe aktarın

Eşitleme kapsamı; bir dizin grubu ya da OU ile üyelerinin alması gereken CID222 rolü ve kiracı grubudur.

Dizin senkronunu açın

Ayarlar → Dizin Senkronu öğesini seçin.

Sayfa şunu yazar: Import users from a group or OU so you can configure their roles before they log in. Dizinle kimlik doğrulama kapalıysa sayfa bunu söyler ve bağlantı bölmesine geri bağlantı verir.

Dizine göz atın

Browse & import altında Scope type alanını Group ya da Organizational Unit yapın, isterseniz Search (optional) kutusuna yazın ve Load groups ya da Load OUs öğesini seçin.

Tablo, servis hesabının görebildiklerini ada göre listeler.

Üyeleri önizleyin

Bir satırda Preview öğesini seçin.

Sağdaki bölme N user(s) in ad bildirir ve onları listeler. Dizinin tek bir yanıtta döndüremeyeceği kadar büyük bir grup, kısmi bir liste yerine bunu bildirir.

Rolü ve grubu seçin

Default role alanını normal_user ya da admin_user yapın; isterseniz Auto-enroll into group alanını var olan bir CID222 kiracı grubu yapın.

Bir dizin kapsamından yalnızca bu iki rol verilebilir. Hedef kiracı grubu zaten var olmalıdır — eşitleme hiçbir zaman grup oluşturmaz.

Kapsamı ekleyin

Add as sync scope öğesini seçin.

Bir bildirim Scope added der ve kapsam, Last sync sütununda hiç göstererek Configured sync scopes altında görünür.

İlk eşitlemeyi çalıştırın

Kapsamın satırında Sync now öğesini seçin.

Bir bildirim Sync complete: der ve içe aktarılan, güncellenen, gruptan çıkarılan ve pasifleştirilen hesap sayılarını verir. İçe aktarılan kullanıcılar seçtiğiniz rolle Kiracılar altında görünür.

Note

Yeniden eşitleme elle yapılır. Bir gün yeniden eşitlenmemiş bir kapsam eski olarak etiketlenir ve şu ipucunu taşır: Not re-synced in over a day — CID group membership may no longer match the directory. Bunu sizin için çalıştıran bir şey yoktur.

Bir dizin kullanıcısı nasıl oturum açar

Yolu kullanıcı adı belirler. Kaydı dizin tabanlı olduğunu söyleyen bir hesap her zaman dizine karşı denetlenir, hiçbir zaman yerel bir parola özetine karşı değil; yerel olan bir hesap ise, dizin etkin ve erişilemez olsa bile her zaman yerelde denetlenir. Bu kural acil erişim güvencesidir — ayarlanacak bir bayrak yoktur, dolayısıyla unutulacak bir bayrak da yoktur.

Başarılı bir bind işleminde cihaz; kullanıcının ayırt edici adını kaydeder, varsa yerel parolayı temizler, görünen adı ve e-postayı dizinden tazeler ve dizin kullanıcıyı yönetici grubuna koymuşsa admin_user rolünü verir. Hiçbir zaman rol düşürmez: dizinin artık gerekçelendirmediği bir rol olduğu gibi bırakılır ve bunun yerine LDAP_ADMIN_ROLE_DRIFT olarak bildirilir.

Birbirine benzeyen ama aynı olmayan iki ret vardır:

  • Invalid credentials, dizinin parolayı reddettiği anlamına gelir.
  • The directory server could not be reached, so directory sign-in is temporarily unavailable. This is not a problem with your password. Local accounts are unaffected. ise dizinin hiç yanıt vermediği anlamına gelir. Hesapta bir sorun yoktur.

Bir dizin hesabı için parola sıfırlama bağlantısı üretilemez. Cihaz şu ifadeyle reddeder: This account is managed by your directory (AD/LDAP). Its password must be reset in the directory — burada üretilecek bir bağlantı, oturum açmanın hiç denetlemediği bir parola belirlerdi.

Alan başvurusu

GET /admin/ldap/config, saklanan kaydı şifreli parola olmadan ve has_bind_password alanıyla birlikte döndürür.

Sayfadaki alanNasıl saklanırVarsayılanNotlar
Enable directory authenticationenabledkapalıBağlantı yalnızca URL, bind DN ve base DN'nin üçü de varken kullanılabilir.
Directory typeflavoradad ya da openldap. Kullanıcı adı ve görünen ad özniteliklerini ve nesne süzgeçlerini belirler.
Server URLurl—Ana makine, port ve aktarım tek bir değerde.
Bind DN (service account)bind_dn—Salt okunur servis hesabı.
Bind passwordşifreli sütun—Hiçbir zaman döndürülmez. Kaydederken boş bırakmak mevcut değeri korur.
Base DNbase_dn—Kullanıcı ve grup aramasının kökü.
User filteruser_filtertüre göreOturum açmada {{username}} yerine değer konur.
Group membership modegroup_modememberOfmemberOf ya da group-search.
Admin group DN (optional)admin_group_dnboşÜyelik admin_user rolünü verir. Boş olması dizinden rol eşlemesi olmaması demektir.
Just-in-time provisioningjit_provisioningaçıkİlk başarılı oturum açmada hesap oluşturur.

POST /admin/ldap/scopes üzerinden eşitleme kapsamı alanları:

Sayfadaki alanNasıl saklanırNotlar
Scope typetypegroup ya da ou.
—dnÖnizlediğiniz satırdan alınan ayırt edici ad.
Default roledefault_roleYalnızca normal_user ya da admin_user.
Auto-enroll into grouptenant_group_idVar olan bir CID222 kiracı grubu ya da hiçbiri.

URL, bind DN ya da base DN değiştirmek, kayıtlı sağlık durumunu hiç denenmedi durumuna sıfırlar. Cihaz dizini kendi zamanlamasıyla, varsayılan olarak beş dakikada bir yeniden dener (LDAP_HEALTH_PROBE_INTERVAL_MS).

Doğrulama

  1. Bağlantıyı test et öğesini seçin. Sıfırdan farklı bir sayıyla Connected. Found N+ user object(s) under the base DN. bildirir.
  2. Connection kartının rozeti Erişilebilir okunur.
  3. Gizli bir pencerede bir dizin kullanıcısı olarak oturum açın. Hesap, Kiracılar altında Dizininizde yönetiliyor işaretiyle görünür ve bir kapsamın içe aktardığı üyeler kiracı gruplarında AD ile eşitlendi gösterir.
  4. Dizini durdurun ya da portu engelleyin ve Olay Günlükleri sayfasının DIRECTORY_DEGRADED, dizin döndüğünde ise DIRECTORY_RECOVERED kaydettiğini doğrulayın. Kesinti sırasındaki bir oturum açma denemesi DIRECTORY_LOGIN_UNAVAILABLE kaydeder.
  5. Dizin hâlâ kapalıyken yerel acil erişim yöneticinizle oturum açın. Başarılı olur.

Başarısız olursa

  • LDAP url, bind DN and base DN must be configured → üçünden biri boştur. Her göz atma, test, önizleme ve eşitleme yolu üçünü birden ister.
  • Testing a different LDAP url requires the bind password to be re-entered; the saved password is only sent to the saved url. → parolayı yeniden yazmadan Server URL değerini değiştirdiniz.
  • Test bir geçersiz kimlik bilgisi hatası bildiriyorsa: bind DN'i ya da parolası yanlıştır veya parola kaydedildiğinden bu yana JWT_SECRET değiştirilmiştir. Bind password alanını yeniden yazıp kaydedin.
  • Test reddedilen bir bağlantı, çözümlenemeyen bir ad ya da zaman aşımı bildiriyorsa cihaz denetleyiciye erişemiyordur. Bkz. Ağ ön koşulları.
  • Test bir sertifika hatası bildiriyorsa denetleyicinin sertifikası cihazın güven deposuna karşı doğrulanmıyordur. Düzenleyici CA'yı kurun ya da doğrulanmamış bir bağlantıyı kabul ediyorsanız LDAP_TLS_REJECT_UNAUTHORIZED değerini false yapın.
  • The service bind succeeded but the base DN returned no entry → bind çalışıyor ve base DN yanlış.
  • Could not read all members of DN ya da aralıklı alma hakkında bir ileti → grup, dizinin tek bir yanıtta döndürdüğünden büyüktür. Bilinçli olarak hiçbir şey kaldırılmadı: okunabilen kısmı tüm üyelik saymak, geri kalan herkesi gruptan çıkarırdı.
  • This sync scope is disabled. Re-enable it before syncing. → kapsam pasiftir.
  • Sync scope "…" is mapped to a CID tenant group (…) that no longer exists. → hedef kiracı grubu silinmiştir. Kapsamı yeniden yönlendirin ya da eşlemeyi kaldırın.
  • Bir kiracı grubunu silmek GROUP_MAPPED_BY_SYNC_SCOPE ile reddediliyorsa bir eşitleme kapsamı hâlâ onu gösteriyordur. Önce kapsamı yeniden yönlendirin.
  • Eşitleme, kullanıcıların içe aktarılmadığını bildirip bir lisans sayısı veriyorsa ya da ilk oturum açma LIMIT_EXCEEDED ile reddediliyorsa lisans kullanıcı üst sınırına ulaşılmıştır. Artık gerekmeyen hesapları pasifleştirin ya da CID222 iletişim kişinizden sınırı yükseltmesini isteyin. Mevcut kullanıcılar oturum açmayı sürdürür.
  • Eşitleme Directory answered only partly … nothing removed bildiriyorsa okuma eksiktir; dolayısıyla ne gruptan çıkarma ne de pasifleştirme çalışmıştır ve kapsamın son eşitleme zamanı ilerlememiştir. Dizin tarafındaki nedeni giderip yeniden eşitleyin.

Üzerine tasarım kurmadan önce bilinmesi gereken sınırlar

Eşitleme hiçbir zaman rol düşürmez ve hiçbir zaman hesap silmez. Bir kapsamdan çıkan bir kullanıcı o kapsamın grup üyeliğini kaybeder; bir hesap yalnızca dizin nesnenin gittiğini olumlu biçimde yanıtladığında pasifleştirilir. Farklı varsayılan rollere sahip iki kapsamla eşleşen bir kullanıcı, sonraki bir koşu onu yönetici grubunda bulmadıkça ilk kapsamın verdiği rolü korur.

Warning

Ayarlar gezinmesindeki Grup Rol Eşlemeleri bir ön izlemedir. Sayfa Preview — not yet wired. yazar ve hiçbir şey kaydetmez. Çalışan tek dizin-rol eşlemesi, bağlantı bölmesindeki Admin group DN (optional) alanıdır.

Sonraki adımlar

  • Kiracı grupları — bir eşitleme kapsamının kullanıcıları kaydettiği gruplar ve onları izleyen kimlik bilgileri.
  • Erişim denetimi — normal_user ve admin_user rollerinin gerçekte neye eriştiği.
  • Parola teslimatı — bir dizin kesintisinde elinizde kalan yerel hesapların sıfırlama bağlantılarını nasıl aldığı.

Son güncelleme

Bu sayfada