Bu kullanıcının 1C erişilebilir rol yok. Active Directory'deki en anlaşılmaz iletişim kutusu

10.29.2012 Tim Springston

Bu yazıda, Active Directory Kullanıcıları (MMC) (DSA.MSC) (DSA.MSC) (DSA.MSC) (DSA.MSC) (DSA.MSC) (DSA.MSC) (DSA.MSC) (DSA.MSC'sinin Özellikler penceresindeki Delegasyon Sekmesi olan "AD'deki en anlaşılmaz iletişim kutusunun en fazla" nın bazı yönlerini açıklığa kavuşturmaya çalışacağım. ). Farklı yapılandırmalar için öznitelik değerlerine bakacağız. Kurulum parametrelerinin atanmasını anlamak, Kerberos delegasyonunu kullanarak reklam uygulamaları ve hizmetlerde doğru yapılandırmanıza izin verecektir.

Tim Springston ( [E-posta Korumalı]) - Kıdemli Servis Mühendisi teknik Destek Microsoft'taki ticari teknik destek bölümleri güvenlik ve yetkilendirmeden sorumludur.

Microsoft teknolojisinde en aktif olarak tartışılanlardan biri, Kerberos protokolünde kimlik doğrulamasıdır. Teknolojinin kendisinin ve fonksiyonlarının serbest bırakıldığından beri önemli değişiklikler yapmayı düşünmemiz garipdir. Windows Server 2003. ve henüz Kerberos, ek belgeleri derlemek için konu olmaya devam ediyor.

Kerberos çalışmalarının teknik yönünü incelemeniz ve hataların nedeni, teknolojinin kendisi değişmeden kalmasına rağmen, hizmetlerini ve kullanım yöntemlerini kullanmasına rağmen, genellikle benzersizdir. Bununla birlikte, her senaryoda, Active Directory'nin (Reklam) kurulum parametrelerinin atanması ve hata mesajlarının anlamı.

Bu yazıda, Active Directory Kullanıcıları (MMC) (DSA) (DSA), Active Directory Kullanıcıları ve Bilgisayarlarındaki Özellikler penceresindeki Delegation Sekmesi olan "AD'deki en anlaşılmaz iletişim kutusu" nın bazı yönlerini açıklığa kavuşturmaya çalışacağım. msc). Farklı yapılandırmalar için öznitelik değerlerine bakacağız. Kurulum parametrelerinin atanmasını anlamak, Kerberos'un delegasyonunu kullanarak reklam uygulamaları ve hizmetlerinde düzgün bir şekilde yapılandırmanıza izin verecektir.

Basit arayüz

Neden "Basit" arayüzünü keşfetmek için zaman harcıyorsunuz? Detaylara dalmak gerekir, çünkü çeşitli parametrelerin çalışmalarının teknik yönünün anlaşılması, yapılandırmalarında hataları düzeltmeye daha başarılı bir şekilde sağlayacaktır. Bu nedenle, kurulumların anlamını kavrayarak başlayalım. Active Directory Kullanıcıları ve Bilgisayarları açıp bilgisayar hesabının özelliklerine giderseniz, delegasyon delegasyon sekmesini göreceksiniz (Ormanınızın Sunucu 2003 işlevsel düzeyinde olması şartıyla). Bu sekme ekranda gösterilmiştir. 1. Ekran 2'deki bu sekmenin anahtarlarının atanmasını açıklamak için alternatif isimler verilebilir.

Parametrelerin anlamını derinleştirmeden önce, hangi delegasyonun Kerberos olduğunu açıklayın. Delegasyon ("Kişilik" veya basit delegasyon olarak da adlandırılır), kaynaklara erişmek için başvuruyu veya Kerberos bilet hizmeti alma işlemidir veya uzak bilgisayar Kullanıcı adına. Delegasyon özü için güvenilir bir hizmettir hesap, uygulamanın işe yaradığı adına. Delegasyon, başvurunun yalnızca kullanıcının kullanıcının erişebileceği kaynaklara erişmesine izin verir. Komut dosyasının bir örneği olarak, kullanıcı tarafından gerekli verileri Web istemcisine görüntülemek için SQL Server sistemine bağlı bir Web sunucusunu getirebilirsiniz.

Ekrandaki iki üst seçenek ("Bilgisayar Heyeti'ne Güvenme" ve "Bilgisayar Daraltına Güven") Açıklama gerektirmez. Üçüncü seçenek, Kerberos Kısıtlı Heyet (KCD), neredeyse basit delegasyona benzer şekilde sınırlı bir delegasyondur, ancak bireysel bir sertifikanın yalnızca belirtilen hizmetler veya bilgisayarlara delegasyonunu sunar. Bu seçenek daha fazlasını sağlar yüksek seviye Güvenlik, kişiselleştirilmiş kullanıcının kimliğinin delegasyonunun kapsamını sınırlama, bu nedenle delegasyon için güvenilen bir hizmet sertifikasının uzlaşması durumunda, sonuçları yalnızca bu kaynaklara erişme yeteneği ile sınırlıdır. uzak sunucularsınırlı delegasyon için manuel olarak seçilir.

Ekran 1'deki dördüncü sürüm, KCD'nin ve yukarıdaki (veya S4U) uzantısının hizmetlerine izin verir. Uzantı S4U, protokol değişikliği gibi daha geniş işlevler sunar. Protokolün değişmesi, istemci ilk önce kimlik doğrulamasını önce Kerberos'tan başka bir protokol üzerinden, gelen bir bağlantı ile gerçekleştirdiğinde oluşur ve ardından Kerberos'a geçer. Detaylı Açıklama S4U, "Windows Server 2003" belgelerinde (msdn.microsoft.com/en-us/magazine/cc188757.aspx) ve "Kısıtlı Delegasyon Teknik Ekleme ile Protokol Geçişi" (MSDN.Microsoft.com " / TRY / Library / FF650469.aspx). Bu kaynaklar programcılara odaklanmıştır ve yöneticilere değil, yöneticinin S4U'nun ne yapacağını ve kullanılması gerektiğini anlaması da önemlidir. Bu amaçla, yönetici için kısa bir S4U özellikleri listesi sunuyoruz.

Bu işaretçinin fiili alınmadan ve bilet verilmeden bilet (TGT) biletini güvenilir bir bilet hizmeti (TGT) biletini, güvenilir bir kullanıcı veya hesap verilerine erişimden almadan bilgi edinmeden bilgi edinme. Elde edilen bilgiler, örneğin yetkilendirmeyi doğrulamak için kullanılabilir. Bu uzantı, kullanıcının kendine özgü hizmetler olarak bilinir (S4U2,).

Kerberos Utility biletini almaya gerek kalmadan, hesap verilerine, TGT iletimine veya kimlik doğrulaması yapılmadan - kullanıcı-proxy (S4U2Proxy) hizmetleri olmadan bilet almak.

Önceden belirtilen bir protokol değişikliğinin gerçekleştirilmesi. Müşteri, kurumsal hizmete hitap eder, başlangıçta Kerberos'tan başka bir yöntem kullanarak kimlik doğrulamasını gerçekleştirir ve S4U, güvenilir hizmetin, kimlik doğrulamasını zaten Kerberos kullanımına geçtiği kullanıcı oturumunu değiştirmesini sağlar. Bu, yapılandırma hatalarının neden olduğu yapılandırma hatalarının sıklıkla ortaya çıkması, çünkü uygulama belgeleri genellikle protokolün gerekli olup olmadığı ve reklamda nasıl yapılandırılacağına dair net açıklamalar içermez. Bununla birlikte, bu konu, bugün "bulutların" bahsetmeden neredeyse hiçbir makale yoktur. "Cloud" üzerinden bağlanan istemciler, Internet'teki Kerberos servis biletinin verilmesi için etki alanı denetleyicileri (DC) işleme taleplerinin bulunmamasından dolayı NTLM kimlik doğrulamasını en sık uygular. Protokolü değiştirmek, kullanıcının bu etki alanını üzerinden bağlamasını sağlar. yazılım ağ ekranı veya kimlik doğrulama yöntemlerinden birini kullanan proxy sunucuları (örneğin, NTLM) ve daha sonra içeride daha fazla eylem yapmak için Kerberos kimlik doğrulamasına geçer Şirket ağı. "Bulut", internet üzerinden bağlanma anlamına gelirse, herhangi bir "bulutlu" çözümü kullanırsanız, daha sonra veya daha sonra Kerberos Protokolü değişiminin kullanımına geldiğinizden şüphelenmeyebilirsiniz.

Dış kılıfın altında

Şimdi, bu dört parametrelerin her birini kurduğunuzda, yapılandırmaların her biri için ayarlanan öznitelik değerlerini görüntüleyen LDP'yi kullanarak gerçekte ne olduğunu düşünün. LDP, etki alanı servisleri reklamının sağına varsayılan olarak yüklenir ve LDAP akım işleme aracı olarak kullanılabilir. grafik arayüzü. LDP, kendi LDAP isteklerinizi oluşturmanıza ve sonuçları algı için uygun bir biçimde görmenizi sağlar. Öznitelik değerlerini görüntülemek için LDP kullanmanın ek avantajı (örneğin, UserAccountControl), hesaplanan parametre değerlerini, sayıların bir kombinasyonu yerine buğulanmış forma aktarmaktır. Bu arada, daha fazla geç sürümler Adsiedit.MSC ayrıca, hesaplanan parametre değerlerinin benzer şekilde işlenmesini sağlar.

Böylece, Windows Server 2008'de ve ldp.exe ve adsiedit.msc'in daha yeni sürümlerinde otomatik çeviri Öznitelik değerleri (örneğin, userAccountControl), Calc.exe'yi açma ve MSDN'de veya Microsoft Bilgi Bankası'na çevrimiçi belgelere erişme gereğini ortadan kaldırır.

Şimdi, yükleyicilere bağlı olarak LDP'deki öznitelik değerlerini değiştirmeyi düşünün. Heyet için güvenilmeyen bir hesapla başlayalım. Ekranda 3, Test2 hesabının güvenilir olmadığı ve UserAccountControl özniteliğinin (ondalık 4128'e karşılık geldiği) onaltılık değer 1020'nin Workstation_trust_Account ve Passwd_notreqd'ye çevrildiği açıktır.

Ekranda 4, delegasyon için emanet edilen bir hesabı göstermektedir. Kerberos'un basit sınırsız delegasyonunun bu hizmet sertifikasına çözünürlüğünü belirten Trusted_For_Delegation'a çevrilmiş KullanıcıAccountControl öznitelik değerini görebiliriz.

Belirli hizmetlere olan heyete güven

S4U veya KCD kullanması amaçlanmışsa, aşağıdaki ayarlar çok önemlidir. İlk durum, yalnızca belirtilen hizmetlere heyet için bu bilgisayara güvenin seçimine karşılık gelir ("Bu bilgisayarın yalnızca belirtilen hizmetleri devralın") ve yalnızca Kerberos'u kullanır ("Sadece Kerberos'u Kullan"). Ekran 5'te, bu tür bir KullanıcıAccountControl özniteliğinin yine İş İstasyonu_trust_Account'u aldığı ve MSDS-AllownToDelegto özniteliğinin, delegasyona izin verilen seçilen hizmetlerle otomatik olarak doldurulduğu görülmektedir. Bu özellik ile başka bir prosedür doldurulmaz ve etkilenmez. Kayıtlar, hangi delegasyona izin verilen bilgisayardaki belirli hizmetleri listeler gibi.

İkinci seçenek daha az güvenlidir - herhangi bir kimlik doğrulama protokolünü kullanın ("Kimlik doğrulama protokolünü kullanın"), protokol ve diğer uzatma seçeneklerinin değişmesine izin verir. MSDS-INDOWTODELEGATETO özniteliğindeki girişlere ek olarak, bu ayar, ekranda gösterildiği gibi Trusted_to_authenticate_for_delegation (T2A4D) adını alan UserAccountControl özniteliğini değiştirir. T2A4D bayrağı olmadan, bir protokol değişikliği hatası bekleyebilirsiniz. Bu bayrakta başka hiçbir bileşen kullanılmaz. Bu basit anahtarın son derece önemli olduğunu, çünkü seçilmezse, S4U2, S4U2Proxy ve protokol değişikliği farklı davranır, bu da ilgili bilet türlerini bekleyen uygulamalar ve hizmetler için problemler yaratabilir. Özellikle, protokolün değişmesi bir hata ile sona erecek ve bilet verilmeyecektir. S4U2PROXY ve S4U2 kendisi, Hata: S4U2Proxy için - herhangi bir durumda ve S4U2PROXY için - başka bir servise veya düğüme bir bilet göndermeniz gerektiğinde, herhangi bir durumda (S4U2proxy) için iletilebilir bir bayrak (yeniden yönlendirme) olmayacaktır.

"Kendin Yap"

Uygulama veya hizmetin kullandığı hizmetin hizmet hesabı, protokolün değişikliğini gerektiren bir işlem yapması durumunda ve delegasyon sekmesinin yalnızca Kerberos kullanımına ("Yalnızca Kerberos'u Kullan") kullanılacağı bir eylem gerçekleştirmesi gerekirse Kimlik doğrulama protokolü ("Herhangi bir protokol kimlik doğrulaması kullanın")? Müşteri uygulaması için, ağ kaynaklarına erişmeye çalıştığınızda bir hata erişim reddedilen formu ("reddedildi erişim") veya NTLM kimlik doğrulaması bildirmeden veya beklenmeyen bir uygulamaya bağımlı bir hata oluşmadan bir hata oluşabilir. Hatanın tezahürünün belirsizliği, görevi daha da karmaşıklaştırır. Bununla birlikte, en muhtemel sonuç, inkar edilecek ("reddedilen erişim"). Böyle bir durumda, başvuru veya hizmetin belgelenmesini öğrendiğinizden emin olun ve TGT'siz hizmetten bir bilet almak için protokol değişikliklerinin veya taleplerinin söylenmeyeceğinden emin olun. Sorun, dokümantasyon derlemelerinin çoğunluğunun, KCD yapılandırmasının anlamını gerçekten anlamadığı ve bu nedenle yetersiz açıklamalar vermemesidir, yoksa genellikle onlarsız maliyetlerdir.

"DIY" prensibi üzerindeki hatanın nedenlerini açıklama yöntemi, heyet için güvenilen bir sunucudan basit bir ağ izleme verileri koleksiyonu olabilir. Kerberos (Kerberosv5, Microsoft Network Monitor veya Wireshark'ta Kerberos) tarafından toplanan veri filtresi. Bir bilet vermek için bir bilet talebi (TGS_REQ) Kerberos Dağıtım Merkezi (KDC) reklam anahtar dağıtım merkezine iletilir ve KDC'nin sınırlı delegasyon bayrağı ile parametrelerini içerir. Bir bilet vermeyi reddederseniz, sunucu yanıtı (TGS_REP), ağ izlemesinin sonuçlarında fark edilmesi kolay olan KDC_ERR_BAD_OPTION'u bir hata içerecektir.

Microsoft Kerberos uygulamaları çalışmaları hakkında daha fazla bilgi Çevrimiçi Açık Protokoller'de bulunabilir. Kerberos protokolü uzantıları (msdn.microsoft.com/en-us/library/cc233855%28v\u003dprot.133%29.aspx) Kerberos ve "Kerberos Protokolü Uzantıları: Kullanıcı için Hizmet ve Kısıtlı Delegasyon Protokolü Şartnamesi" için genel belgeler içerir ( Msdn.microsoft.com/en-us/library/cc246071%28v\u003dprot.13%29.aspx) - Kerberos ve S4U sınırlı delegasyonunda belgeler.

Mükemmel dünya

Kerberos arayüz penceresindeki ayarların yukarıdaki analizinin ve reklamdaki yazışmalarının anlamlarını daha iyi anlamanıza yardımcı olacak umarım. İdeal, yönetilen hizmetlerin belgelendirmesinin teknik rehberlerini içerdiği bir dünya olabilir. uygun ayar Kimlik doğrulaması için. Ancak, gerçeklik idealten uzaksa, bu bilgi araç setinizi geliştirmeye yardımcı olmalıdır. Parametrelerin çalışmalarının teknik yönünü anlamak, başarının anahtarı olacaktır.



2 cevap

çözüldü.

İlk yarı benim aşırı basıncımdı. İkinci yarım ... Neyin yanlış olduğu hakkında hiçbir sözüm yok. Aslında, bu bir hata ya da uyumsuzluk değildir, ancak bir şey çok rahatsız edici, aralıklı ve anlaşılması zordur. Birincisi, özeti ve ardından önem verenler için uzunluğun açıklanması:

Hata mesajlarının cümlelerine rağmen, bu kavramsal model (CSDL) ile ilgili bir sorun değil, ancak bunların kesintileri ile yeniden oluşturan sütunları karşılaştırma sorunudur.

Kavramsal model, DBContext syntactik analizi ve ana parçaları için EdmxWriter kullanılarak yapıldı.

Model daha sonra devreyi yeni bir veritabanına aktarmak için SQL komut dosyaları oluşturmak için kullanıldı. Odak noktası, veritabanının Oracle'dır.

Oracle bir çocuktur ve uzun sütun adlarını kabul etmiyor. Böylece, oluşturulan EDMX ve SQL komut dosyaları, kavramsal modelin bölümlerini kısaltılmış sütun adları ile oluşturmak ve karşılaştırmak için değiştirilmelidir.

Çok önemli değil. İyi çalışıyor. Peki her şey nereye gitti?

Oracle "önce kodu" desteklemez. Ve manuel olarak yapıldığına rağmen, EdmxWriter'ın kullanımı, Oracle'da bir kod yaklaşımıdır. Bu nedenle, ilk EDMX şeması söküldüğünde, mantıksal karşılaştırmalar üzerine gelir. Karar, BOOL'ları C # modellerimden geçici olarak kaldırmak, EDMX'e manuel olarak ekleyin ve Web.config Oracle (Bool'u eşleme Bool'a (1.0)) haritalamaktı.

Hepsi yine groovy. Ama neden tekrarlamaya devam ediyor?

Geliştirme süreci boyunca farklı zamanlarda, sözleşmenin bazı uçları - Ya C #, EDMX veya Oracle değişikliği. Ve her göründüğünde, sütunlar otomatik olarak yeniden atandı ve bilmiyordum. EDMX modeli Oracle'dan güncellendiyse, karşılaştırılabilir olan C # (kısa sütun adları) olan C #'nin özelliklerini belirtilir. Model C # kodundan güncellenmişse, eşleme kaydedilmedi ve Oracle'da olmayan sütunların uzun isimlerini karşılaştırmaya çalıştılar.

Bu yaklaşımla hata (ilk önce ilk hibrid kodu ve model), kendi modellerimi kontrol etmeye devam etmek ve bir çocuğa yönelik küçük bir tutum için gerekli ayarları ele almak istersem, çok dikkatli olmalıyım ve EDMX dosyasının özelliğini takip etmeliyim. .

Siteler, Uygulamalar, Oyunlar - Kullanıcılar tarafından yönetilen bilgi kaynakları. İzin verilen ve yasaklanan işlemleri, eylemin bir veya başka bir kullanıcısı için bölmek, erişim hakları (PD) kullanılır. PD'nin kapsamı rolleri oluşturur. Örneğin, temel siteye kayıt olasılığı ile bakın.

Bu sitede "canlı" 3 rolleri hakları ve yükümlülükleriyle:

1.

Tüm isimsiz varsayılanlar bu rolde çalışır. Sitenin misafirlerini doğru "Yorum ekleme" ile giyinirsek, siteye gelen kullanıcının ilginiz hakkında yorum yapabilecektir. Ve değilse, daha sonra önce kayıt yaptırmanız gereken içerik hakkında yorum yapmak için.

2.

Geçmiş kimlik doğrulama ve yetkilendirme anonim olsun yeni rol. Yalnızca yetkili kullanıcılar yönetebilir kişisel hesap, Kişisel verileri ekleyin ve düzenleyin, diğer karakterlerle ilgili bilgileri görüntüleyin. Kayıtsız kullanıcılar bu işlemler için hakları yoktur.

3. Yönetici

Bu varsayılan rol, kullanıcıya siteye tam erişim sağlar. Kaynak yöneticisi ekler, blokları kaldırır ve diğer kullanıcılardan bir veya başka bir işlevselliğe erişme hakkını verir.

Nasıl test edilir ve neye dikkat ediyorsunuz?

Her şeyden önce, ayarlarla oynatılarak "Süper Yönetici" ni kaldırmamaya çalışacağız.

  • Güvenli bir karakter oluşturun

Projede gerçek etkinliklere yaklaşmak için, benzer idari güçlere sahip yeterli ek kullanıcı var. Ve zaten bu karakter tarafından, kaynağı test ediyoruz ve diğer kullanıcıların erişimi için izinleri değiştiririz.

  • Birkaç tarayıcıyı kontrol edin

Aynı zamanda yaptık: birinde PD'yi değiştirerek, bir diğerinde kullanıcı için hakların kullanımını kontrol edersiniz, böylece kullanıcı oturumlarını paylaşır.

  • Doğrudan bağlantıdan geçiyoruz

Test bloğu kısıtlamaları, üzerinde hareket ediyor URL adresi. Bazı kaynak verilerini görüntülemek, yetkisiz bir misafir sahası için referans olarak kullanılamaz. Erişim sınırlıysa, her şey yolundadır: Kapalı bilgiler yerine, anonim bir uyarı mesajı, çoğu zaman kod 403 ile özel bir sayfa şeklinde alacaktır.

  • Varlıkların engellenmesini test ediyoruz

Bilet ve turlar için biletler gibi kaynaklar için, birkaç kullanıcının hemen erişebileceği zaman öğeyi engellemek önemlidir. İki engelleme seçeneği vardır:

+ İyimser engelleme Kaydederken Veritabanını daha fazlası için kontrol eder yeni sürüm Başka bir kullanıcı tarafından kalan veriler. Eğer öyleyse, mevcut kullanıcı bu varlığın örneğini günceller.

+ Karamsar engelleme İşletmeler, iyimser çok fazla çarpışma yarattığında kullanılır. Bu durumda, yalnızca bir kullanıcı şu anda kullanır ve değişir bu seçenek Varlıklar.

Bir bilgisayardan birkaç tarayıcıda veya farklı hesaplarda test edilebilir.

  • Bir test matrisi kullanıyoruz

Test cihazının çalışmalarını basitleştirir, izin verilen ve yasaklanmış eylemleri açıkça gösterir ve bu sadece hiçbir şeyi kaçırmamaya yardımcı olur. Tüm rolleri, kullanıcıları, karakterlerimizin olanaklarının kısıtlamalarının varyasyonlarını boyuyoruz.

Ve burada bir test matrisinin en basit örneği:

Erişim kontrolü içindeki ana kontrollerden biridir. Yerel kütüphanenin sitesini üç rolle kontrol etmek bile zorlukların testine bakar. Ancak onlarca rolü olan popüler kaynaklar, binlerce kullanıcı ve milyonlarca izin, tüm yönetici ordusunu gerektirir! Test, teste dile girerse, hasar ölçeğini hayal etmemiz zordur. Yetkili uzmanları cezbedin ve alanlarınızın güvenli bir şekilde güvenli olmasına izin vermeyin!