ฉันจะทำให้ Chrome มอบสิทธิ์ข้อมูลประจำตัวโดยไม่ต้องเปิดแอป asp.net ใน IE ก่อนได้อย่างไร

ฉันได้รับข้อผิดพลาดต่อไปนี้ในเบราว์เซอร์ Chrome (หากฉันไม่ได้เปิดแอปใน IE ก่อน): : Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON' และขึ้นอยู่กับรหัสที่ใช้ในการรับชื่อผู้ใช้ ฉันอาจได้รับข้อผิดพลาดนี้: System.DirectoryServices.DirectoryServicesCOMException: An operations error occurred

ฉันได้จำกัดปัญหาให้แคบลงเหลือเพียง Chrome ที่ได้รับถึงระดับการเลียนแบบเป็น "Impersonation" ในขณะที่ IE ไปถึงระดับการเลียนแบบเป็น "Delegation" ฉันเขียนแอปง่ายๆ c#.net 4.5.2 ที่เรียกว่า (VS 2017) การตรวจสอบเบราว์เซอร์ที่สอบถาม SQL Server 2008 บนเซิร์ฟเวอร์เดียว (SERVER2) ในขณะที่ติดตั้งเว็บแอปบนเซิร์ฟเวอร์อื่น (SERVER1) เพื่อสะท้อนการตั้งค่าการผลิตของเรา

ใน IIS 7 ฉันเปิดใช้งาน Windows Authentication และ Impersonation แล้ว AppPool นั้นเป็น v4.0 Classic พร้อม identity=NetworkService อย่างไรก็ตามในการแก้ไขปัญหาฉันได้เปลี่ยนข้อมูลประจำตัวเป็น LocalSystem และ ApplicationPoolIdentity โดยไม่มีการเปลี่ยนแปลง ฉันได้ตั้งค่า Load User Profile เป็นจริงแล้ว ฉันยังได้ตรวจสอบกับ NA ของฉันด้วยว่า AD ตามค่าเริ่มต้นได้มอบหมายการมอบหมายสำหรับ SERVER1 และ SERVER2 เพื่อ เชื่อถือคอมพิวเตอร์เครื่องนี้สำหรับการมอบหมายบริการใดๆ (Kerberos เท่านั้น)

ฉันเคยเยี่ยมชมโพสต์ของ Graham Clark ที่นี่ ซึ่งคล้ายกับของฉันอย่างใกล้ชิดยกเว้น IIS AppPool ของเขาคือ Integrated Pipleline Mode ในขณะที่ของฉันคือ Classic วิธีแก้ปัญหาของเขาคือตั้งค่าผู้ให้บริการ Windows Authentication เป็น "เจรจา: Kerberos ไม่ใช่ NTLM" ซึ่ง ฉันไม่เห็นว่าจะตั้งค่านี้ที่ไหนใน IIS7 ??? IIS ตั้งค่านี้เป็นค่าเริ่มต้นใช่ไหม

ฉันเข้าใจว่าปัญหาดับเบิ้ลฮอปคืออะไร แต่สำหรับฉันแล้วดูเหมือนว่านั่นจะไม่ใช่ปัญหา เพราะแอปทำงานได้ดีเมื่อดูด้วยเบราว์เซอร์ IE 11 แอปบางแอปยังใช้งานได้ใน Chrome หลังจากที่ฉันตรวจสอบสิทธิ์ใน IE11 ก่อนแล้ว

ปัญหาคือฉันต้องให้ Chrome ตรวจสอบสิทธิ์ก่อน (หรือเบราว์เซอร์อื่นๆ) โดยไม่จำเป็นต้องเปิดใน IE ก่อน เนื่องจากเราจะเลิกใช้ IE เร็วๆ นี้

บันทึก IIS

#Software: Microsoft Internet Information Services 7.0
#Version: 1.0
#Date: 2019-05-14 15:58:17
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2019-05-14 15:58:17 10.100.10.00 GET /browsercheck - 80 - 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 401 2 5 72
2019-05-14 15:58:17 10.100.10.00 GET /browsercheck - 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 301 0 0 3
2019-05-14 15:58:20 10.100.10.00 GET /browsercheck/ - 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 200 0 0 2349
2019-05-14 15:58:20 10.100.10.0 GET /BrowserCheck/bundles/MsAjaxJs v=VA_FXLaB5PurewZl92JsrSUQcDrqhwBct539oVLEeiY1 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 404 0 2 2
2019-05-14 15:58:20 10.100.10.00 GET /BrowserCheck/bundles/WebFormsJs v=N8tymL9KraMLGAMFuPycfH3pXe6uUlRXdhtYv8A_jUU1 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 404 0 2 2
2019-05-14 15:58:22 10.100.10.00 POST /browsercheck/ - 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 200 0 0 108
2019-05-14 15:58:22 10.100.10.0 GET /BrowserCheck/bundles/MsAjaxJs v=VA_FXLaB5PurewZl92JsrSUQcDrqhwBct539oVLEeiY1 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 404 0 2 2
2019-05-14 15:58:22 10.100.10.00 GET /BrowserCheck/bundles/WebFormsJs v=N8tymL9KraMLGAMFuPycfH3pXe6uUlRXdhtYv8A_jUU1 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 404 0 2 2
2019-05-14 15:58:37 10.100.10.00 GET /browsercheck/ - 80 - 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/74.0.3729.131+Safari/537.36 401 2 5 0
2019-05-14 15:58:37 10.100.10.00 GET /browsercheck/ - 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/74.0.3729.131+Safari/537.36 500 0 0 76
2019-05-14 15:58:37 10.100.10.00 GET /favicon.ico - 80 - 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/74.0.3729.131+Safari/537.36 401 2 5 98
2019-05-14 15:58:37 10.100.10.00 GET /favicon.ico - 80 ABC\user1 00.000.00.00 Mozilla/5.0+(Windows+NT+6.1;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/74.0.3729.131+Safari/537.36 404 0 2 3

person Doreen    schedule 14.05.2019    source แหล่งที่มา
comment
ฉันสงสัยว่าจะมีใครตอบโพสต์นี้ แต่ฉันค้นพบว่าใน IE11 ระดับการเลียนแบบสำหรับผู้ใช้คือการมอบหมาย และระดับการเลียนแบบเป็นการเลียนแบบใน Chrome ค่า Windows Identity อื่นๆ ทั้งหมดจะเหมือนกัน (ผู้ใช้คนเดียวกัน)   -  person Doreen    schedule 15.05.2019
comment
พูดคุยกับผู้ดูแลระบบโดเมนของคุณเพื่อที่พวกเขาจะได้ช่วยคุณวิเคราะห์การตั้งค่าที่เกี่ยวข้องกับ Kerberos IE/Edge สามารถทำงานได้อย่างไร้ที่ติด้วยการมอบหมาย Kerberos แต่ไม่แน่ใจว่า Chrome จะรองรับแบบเดียวกันหรือไม่   -  person Lex Li    schedule 15.05.2019