ASP.NET Core'da Windows Kimlik Doğrulaması: Manuel giriş ve Otomatik İntranet Girişi ve Kullanılabilir Gruplar


9

Oturum açmış kullanıcıları belirlemek için yerel Intranet Windows Kimlik Doğrulaması ile çalışan bir ASP.NET Core 3.0 uygulamam var. Standart Windows Kimlik Doğrulama davranışlarını kullanarak kullanıcının WindowsIdentitysorunsuz bir şekilde yakalanmasını sağlayabiliyorum .

Ancak, kullanıcının otomatik İntranet Tarayıcı oturum açma (yani parola iletişim kutusu yok) kullanarak veya tarayıcı Parola iletişim kutusunu kullanarak açıkça oturum açarak tarayıcıya nasıl giriş yaptığına bağlı olarak , kullanıcı grupları için farklı sonuçlar elde ederim .

Aşağıda, filtrelenmiş bir grup üyelik listesi (yerleşik hesapları hariç tutan) dahil kullanıcı bilgilerini geri alan bir API isteği yer almaktadır. Soldaki manuel giriş, sağdaki otomatik giriş.

Açık oturum için kullanıcının parçası olduğu tüm özel grupları doğru bir şekilde görüyorum. Ancak, otomatik giriş için aynı gruplar görünmez:

manuel giriş ile otomatik giriş arasındaki grup farkları

Sunucudaki Kullanıcı ve Kimlik örneklerine de yakından baktım ve kullanıcı için aynı SID'lere atıfta bulunuyor, bu nedenle Grup Üyeliği için farklı sonuçların döndürülmesi garip görünüyor.

Aynı hesabı iade ettiğimde grup listesinin neden farklı olduğuna dair bir fikrin var mı? Grupların yerel olduğunu ve bu nedenle alan adı erişimi nedeniyle bir sorun olmaması gerektiğini unutmayın.

Not: Hatta localhost üzerinde yerel olarak test ediyorum ve bunu test etmek için Windows Proxy Ayarları'nı burada ayarladım:

Giriş yapılandırması

Onay kutuları kapalıyken giriş yapmak zorundayım. Onlarla birlikte (yine de Chromium tarayıcılarında) kimlik bilgilerimi tarayıcının giriş iletişim kutusuna açıkça girmem gerekiyor.

Yanıtlar:


9

Kullanıcı bu gruplara eklendiğinden beri bilgisayarından çıkış yaptı mı?

Listelenen gruplar kullanıcının oturum açma simgesinde tutulur. Sanırım ne olabileceği, otomatik girişin kullanıcının mevcut giriş jetonunu göndermesi (Windows'da oturum açtıklarında oluşturulmuş), bu yüzden en son giriş yaptıkları günden bu yana eklendikleri grupları içermeyecekleri.

Kullanıcı adını ve şifreyi manuel olarak girmek yeni bir oturum açma işlemi gerçekleştirir ve böylece oturum açma sırasında tüm gruplarla yepyeni bir simge alır. Böylece yeni gruplar ortaya çıkacak.


1
Bazı ek kontrollerden sonra kesinlikle doğru olduğunuz ortaya çıkıyor. Başlangıçta sorunları gösterdiğinden beri makineyi yeniden başlattığımı sanıyordum, ancak aslında bir oturum kapatıp oturum açmayı zorladıktan sonra gerçekten tekrar giriş yaptıktan sonra grupları görebildiğimi fark ettim. Teşekkürler - geçmişte çok açık ama yine de kaçırmak çok kolay.
Rick Strahl
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.