Saya memiliki aplikasi ASP.NET Core 3.0 yang bekerja dengan Otentikasi Windows Intranet lokal untuk mengidentifikasi pengguna yang masuk. Menggunakan perilaku Otentikasi Windows standar, saya dapat menangkap pengguna WindowsIdentity
tanpa masalah.
Namun, tergantung pada bagaimana pengguna login ke browser menggunakan login Browser Intranet otomatis (mis. Tidak ada dialog kata sandi) atau secara eksplisit masuk menggunakan kotak dialog Kata sandi browser, saya mendapatkan hasil yang berbeda untuk grup pengguna .
Berikut ini adalah permintaan API yang menggemakan kembali informasi pengguna termasuk daftar keanggotaan grup yang difilter (yang tidak termasuk akun bawaan). Yang di sebelah kiri adalah login manual, yang di sebelah kanan login otomatis.
Untuk login eksplisit saya dengan benar melihat semua grup kustom yang menjadi bagian dari pengguna. Namun, untuk masuk otomatis, grup yang sama tidak muncul:
Saya juga mencermati contoh User dan Identity di server, dan ini mereferensikan SID yang sama persis untuk pengguna, jadi sepertinya aneh bahwa hasil yang berbeda sedang dikembalikan untuk Keanggotaan Grup.
Adakah gagasan mengapa daftar grup berbeda ketika saya mendapatkan akun yang sama dikembalikan? Perhatikan bahwa grup tersebut bersifat lokal sehingga tidak boleh menjadi masalah karena akses domain.
Catatan: Saya bahkan menguji secara lokal di localhost, dan untuk mengujinya saya menetapkan Pengaturan Proxy Windows di sini:
Dengan kotak centang mati, saya dipaksa untuk masuk. Dengan diaktifkannya (di browser Chromium) saya harus memasukkan kredensial saya secara eksplisit ke dialog login browser.
sumber