การพิสูจน์ตัวจริงของ Windows ใน ASP.NET Core: การเข้าสู่ระบบด้วยตนเองและการเข้าสู่ระบบอินทราเน็ตอัตโนมัติและกลุ่มที่มีอยู่


9

ฉันมีแอพพลิเคชั่น ASP.NET Core 3.0 ที่ทำงานกับการรับรองความถูกต้อง Windows Intranet ในพื้นที่เพื่อระบุผู้ใช้ที่เข้าสู่ระบบ การใช้พฤติกรรมการตรวจสอบสิทธิ์ Windows แบบมาตรฐานฉันสามารถถ่ายภาพผู้ใช้ได้WindowsIdentityโดยไม่มีปัญหา

แต่ขึ้นอยู่กับว่าผู้ใช้จะถูกบันทึกลงในเบราว์เซอร์ที่ใช้เข้าสู่ระบบอินทราเน็ตอัตโนมัติทั้งเบราว์เซอร์ (เช่น. ไม่มีโต้ตอบรหัสผ่าน) หรืออย่างชัดเจนในการเข้าสู่ระบบโดยใช้รหัสผ่านเบราว์เซอร์กล่องโต้ตอบฉันได้รับผลลัพธ์ที่แตกต่างกันสำหรับกลุ่มผู้ใช้

ต่อไปนี้เป็นคำขอ API ที่สะท้อนข้อมูลผู้ใช้รวมถึงรายชื่อสมาชิกกลุ่มที่ถูกกรอง (ยกเว้นบัญชีในตัว) ทางด้านซ้ายคือการเข้าสู่ระบบด้วยตนเองทางด้านขวาเป็นการเข้าสู่ระบบอัตโนมัติ

สำหรับการเข้าสู่ระบบอย่างชัดเจนฉันเห็นกลุ่มกำหนดเองทั้งหมดที่ผู้ใช้เป็นส่วนหนึ่ง อย่างไรก็ตามสำหรับการเข้าสู่ระบบอัตโนมัติกลุ่มเดียวกันเหล่านั้นจะไม่ปรากฏขึ้น:

ความแตกต่างของกลุ่มสำหรับการเข้าสู่ระบบด้วยตนเองและโดยอัตโนมัติ

ฉันยังได้ดูอินสแตนซ์ของผู้ใช้และตัวตนอย่างใกล้ชิดบนเซิร์ฟเวอร์และมันอ้างอิง SID ที่เหมือนกันสำหรับผู้ใช้ดังนั้นมันจึงแปลกที่ผลลัพธ์ที่แตกต่างกันจะถูกส่งคืนสำหรับการเป็นสมาชิกกลุ่ม

แนวคิดใดที่ว่าทำไมรายชื่อกลุ่มจึงแตกต่างกันเมื่อฉันได้รับบัญชีเดียวกันคืน โปรดทราบว่ากลุ่มอยู่ในพื้นที่ดังนั้นจึงไม่น่าเป็นปัญหาเนื่องจากการเข้าถึงโดเมน

หมายเหตุ: ฉันกำลังทดสอบแบบโลคัลบน localhost แม้และเพื่อทดสอบสิ่งนี้ฉันตั้งค่า Windows Proxy Settings ที่นี่:

การกำหนดค่าการเข้าสู่ระบบ

เมื่อปิดช่องทำเครื่องหมายฉันถูกบังคับให้ลงชื่อเข้าใช้ เมื่ออยู่ใน (ในเบราว์เซอร์ Chromium) ฉันต้องป้อนข้อมูลรับรองของฉันลงในช่องโต้ตอบการเข้าสู่ระบบของเบราว์เซอร์อย่างชัดเจน

คำตอบ:


9

มีผู้ใช้ออกจากระบบคอมพิวเตอร์ของพวกเขาตั้งแต่ถูกเพิ่มไปยังกลุ่มเหล่านั้น?

กลุ่มที่แสดงรายการอยู่ในโทเค็นการเข้าสู่ระบบของผู้ใช้ ฉันคิดว่าสิ่งที่อาจเกิดขึ้นคือการเข้าสู่ระบบอัตโนมัติจะส่งโทเค็นการเข้าสู่ระบบที่มีอยู่ของผู้ใช้ (สร้างขึ้นเมื่อพวกเขาเข้าสู่ระบบ Windows) ดังนั้นมันจะไม่ประกอบด้วยกลุ่มใด ๆ ที่พวกเขาได้รับการเพิ่มตั้งแต่พวกเขาเข้าสู่ระบบครั้งสุดท้าย

การป้อนชื่อผู้ใช้และรหัสผ่านด้วยตนเองจะเป็นการเข้าสู่ระบบใหม่และทำให้ได้รับโทเค็นใหม่พร้อมกลุ่มทั้งหมดในเวลาที่เข้าสู่ระบบ ดังนั้นกลุ่มใหม่จะปรากฏขึ้นที่นั่น


1
หลังจากตรวจสอบเพิ่มเติมปรากฏว่าคุณถูกต้องอย่างแน่นอน ตอนแรกฉันคิดว่าฉันได้รีบูทเครื่องเนื่องจากปัญหาแสดงให้เห็น แต่หลังจากบังคับให้ออกจากระบบและเข้าสู่ระบบฉันพบว่าหลังจากเข้าสู่ระบบอีกครั้งฉันก็สามารถดูกลุ่มได้ ขอบคุณ - เห็นได้ชัดในการหวนกลับ แต่ก็ยังง่ายที่จะพลาด
Rick Strahl
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.