อาการ
เมื่อคุณใช้แอพลิเคชันเดสก์ท็อปแทนหรือ Microsoft Management Console (MMC) ในสภาพแวดล้อมที่กำลังทำงานอยู่ Microsoft ลูกค้าดูแล Framework (CCF), ได้รับไคลเอนต์ Windows ที่มีการ Microsoft .NET Framework 3.5 Service Pack 1 (SP1) ติดตั้งอยู่ ต่อไปนี้แสดงข้อผิดพลาดในบันทึกของโปรแกรมประยุกต์ใน Event Viewer:ข้อความแสดงข้อผิดพลาด 1
ListenerConfiguration พบปัญหาขณะพยายามเข้าถึงบริการเว็บการตั้งค่าคอนฟิก การร้องขอ HTTP ไม่ได้รับอนุญาตกับโครงร่างการรับรองความถูกต้องของไคลเอ็นต์ 'Negotiate' หัวข้อการรับรองความถูกต้องที่ได้รับจากเซิร์ฟเวอร์ถูก 'Negotiate'
ข้อความแสดงข้อผิดพลาด 2
ListenerConfiguration พบปัญหาขณะพยายามเข้าถึงบริการเว็บการตั้งค่าคอนฟิก การร้องขอ HTTP ไม่ได้รับอนุญาตกับโครงร่างการรับรองความถูกต้องของไคลเอ็นต์ 'Negotiate, NTLM' หัวข้อการรับรองความถูกต้องที่ได้รับจากเซิร์ฟเวอร์ถูก 'Negotiate'
นอกจากนี้ ถ้าคุณใช้เดสก์ท็อปของบริษัทตัวแทน แอพลิเคชันไม่ทำงาน ปัญหานี้เกิดขึ้นถ้า Url ปลายทางที่ใช้ ในแฟ้มการกำหนดค่าเดสก์ท็อปของบริษัทตัวแทน และฐานข้อมูล CCFInfrastructure ชี้ไปชื่อ NetBIOS จริงของเซิร์ฟเวอร์ที่โฮสต์ CCF เว็บเซอร์วิส ถ้าคุณใช้ MMC พร้อมกับชื่อ NetBIOS จริง สำหรับ CCF เว็บเซิร์ฟเวอร์ หรือชื่อโดเมน(แบบเต็ม FQDN) ที่ปรากฏในกล่องการเชื่อมต่อการเชื่อมต่อไม่สำเร็จ นอกจากนี้ คุณเห็นข้อความแสดงข้อผิดพลาดที่คล้ายกับต่อไปนี้ในบันทึกเหตุการณ์ของระบบ:หมายเหตุCCF เว็บเซิร์ฟเวอร์เป็นเซิร์ฟเวอร์ที่เรียกใช้ Internet Information Services (IIS)
สาเหตุ
ปัญหานี้เกิดขึ้นเนื่องจากการเปลี่ยนแปลงความปลอดภัยและการรับรองความถูกต้องที่เกี่ยวข้องกับกรอบงานการติดต่อสื่อสาร Windows (WCF) ใน 1. Service Pack 3.5 ของกรอบงาน.NET ที่สำหรับข้อมูลเพิ่มเติม โปรดดูส่วน 2.3.2 ของไฟล์.NET 3.5 Service Pack 1 Readme เมื่อต้องการดูแฟ้มนี้ แวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft:
การแก้ไข
หากต้องการแก้ปัญหานี้ ให้ทำตามขั้นตอนต่างๆ ต่อไปนี้:
-
ตั้งค่านามแฝงที่ชื่อระเบียน CNAME สำหรับเซิร์ฟเวอร์ CCF IIS ใน DNS เมื่อต้องการทำเช่นนี้ ให้ทำตามขั้นตอนเหล่านี้ บันทึกย่อ
-
ชื่อที่ใช้ใน Url ปลายทางในเดสก์ท็อปของบริษัทตัวแทน ใน MMC และในเว็บบริการแฟ้มการกำหนดค่า
-
คุณต้องเป็นผู้ดูแลโดเมนและผู้ดูแลระบบ DNS หรือทำตามขั้นตอนเหล่านี้
-
บนตัวควบคุมโดเมนที่กำลังเรียกใช้ DNS คลิกเริ่มชี้ไปที่โปรแกรมทั้งหมดคลิกเครื่องมือการจัดการและจากนั้น คลิกDNS
-
ขยายโหนดตัวควบคุมโดเมน
-
ขยายโหนดโซนการค้นหาไปข้างหน้า
-
คลิก CCF FQDN
-
คลิกขวาในบานหน้าต่างด้านขวา
-
คลิกสร้างนามแฝง (CNAME)
-
ในกล่องโต้ตอบระเบียนทรัพยากรใหม่พิมพ์นามแฝง ตัวอย่าง พิมพ์ชื่อของคอมพิวเตอร์ที่ใช้นามแฝงของ CCF IIS ร่วมกับ FQDN ของเซิร์ฟเวอร์ CCF IIS
-
เพิ่มโฮสต์จำเป็น และจากนั้น คลิกเสร็จสิ้น
-
-
บนคอมพิวเตอร์ไคลเอนต์ เพิ่ม URL HTTP ของคอมพิวเตอร์นามแฝง CCF IIS และนามแฝง CCF IIS FQDN ลงในรายการไซต์อินทราเน็ตท้องถิ่น
-
เปลี่ยนชื่อเซิร์ฟเวอร์ทั้งหมดในปลายทาง Url จาก "CCF IISชื่อเซิร์ฟเวอร์ที่แท้จริงหรือ FQDN" เมื่อต้อง การชื่อนามแฝง CCF IIS หรือนามแฝง CCF IIS FQDN คุณต้องดำเนินการในแฟ้มหรือ Url ต่อไปนี้:
-
แฟ้ม Agentdesktop.exe.config บนไคลเอนต์
-
แฟ้ม Mmc.exe.config สำหรับ MMC
-
CCF เว็บบริการแฟ้ม Web.config บนเซิร์ฟเวอร์ CCF IIS
-
Url ทั้งหมดปลายทางในฐานข้อมูล CCFInfrastructure เซิร์ฟเวอร์ SQL ของ Microsoft
-
-
ที่พรอมต์คำสั่ง เรียกใช้คำสั่งSetSpnในการลงทะเบียนชื่อบริการหลัก (SPN) ของข้อมูล โฮสต์/CCFAlias และ host/CCFAlias.fabrikam.com รายละเอียดสำหรับบัญชีผู้ใช้ที่กำลังเรียกใช้พูลโปรแกรมประยุกต์ของบริการเว็บ CCF ใน IIS ตัวอย่างเช่น ใช้คำสั่งSetSpnในการลงทะเบียน SPN "ASPUSER" หมายเหตุ คุณต้องเข้าสู่ระบบเป็นผู้ดูแลโดเมนเพื่อทำขั้นตอนนี้ เมื่อต้องการดาวน์โหลดเครื่องมือสนับสนุน Setspn.exe คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
970536 Setspn.exe สนับสนุนเครื่องมือการปรับปรุงสำหรับ Windows Server 2003ในตัวอย่างต่อไปนี้แสดงวิธีการเรียกใช้คำสั่งSetSpn :
setspn –S host/CCFIISAlias MyDomain\MyCCFAppPoolServiceAccount
setspn –S host/CCFIISAlias.mydomain.com MyDomain\MyCCFAppPoolServiceAccount
-
ทำตามวิธีใดวิธีหนึ่งต่อไปนี้เพื่อกำจัดตั๋วบนไคลเอนต์:
-
เริ่มการทำงานของคอมพิวเตอร์ไคลเอนต์
-
รอตั๋ว Kerberos จะหมดอายุในคอมพิวเตอร์ไคลเอนต์
-
ใช้แฟ้ม Kerbtray.exe จาก Windows Resource Kit
-
-
เดสก์ท็อปของบริษัทตัวแทนการทดสอบและ MMC หมายเหตุ ใน MMC โปรดตรวจสอบให้แน่ใจว่า คุณพิมพ์ชื่อนามแฝง CCF IIS แทนชื่อของเซิร์ฟเวอร์ CCF IIS ในการเชื่อมต่อกับกล่อง
หมายเหตุ โปรแกรมประยุกต์เว็บที่ทำงานใน IIS 7.0 ใช้คุณลักษณะใหม่ที่เรียกว่าการรับรองความถูกต้องของโหมดเคอร์เนลจะทำการรับรองความถูกต้องของ Windows คุณลักษณะนี้ช่วยให้ สำหรับการตั้งค่าคอนฟิก SPN แบบง่าย และประสิทธิภาพการทำงานของการรับรองความถูกต้องขั้นสูง โดยค่าเริ่มต้น IIS 7.0 เปิดใช้งานคุณลักษณะนี้ IIS 7.0 ใช้ข้อมูลเฉพาะตัวของพูลโปรแกรมประยุกต์เพื่อถอดรหัสตั๋ว Kerberos ในระหว่างการพิสูจน์ตัวจริงของ Windows ถ้าคุณกำลังใช้ CCF 2009 พร้อม กับ IIS 7.0 หรือ Windows Server 2008 คุณต้องตั้งค่าสถานะในเซิร์ฟเวอร์ที่กำลังเรียกใช้แฟ้มการกำหนดค่า IIS เพื่อใช้ข้อมูลประจำตัวของพูลโปรแกรมประยุกต์สำหรับการตรวจสอบ เมื่อต้องการตั้งค่าสถานะนี้ ให้ทำตามขั้นตอนเหล่านี้:
-
บนเซิร์ฟเวอร์ IIS 7.0 เปิดพร้อมท์คำสั่งเป็นผู้ใช้ของผู้ดูแลระบบ
-
เรียกใช้คำสั่งต่อไปนี้:
Notepad.exe C:\Windows\System32\inetsrv\config\applicationHost.config
-
ในการกำหนดค่า XML เปลี่ยนแปลงการกำหนดค่าการรับรองความถูกต้องสำหรับบริการ CCF ทั้งหมดที่มีโฮสต์อยู่ในพูลโปรแกรมประยุกต์ และที่ทำงานภายใต้บัญชีผู้ใช้ของ DOMAIN\CCFAppPoolSERVICEAccount ต่อไปนี้เป็นตัวอย่างของการเปลี่ยนแปลงการตั้งค่าคอนฟิกที่จำเป็น:
<location path="Default Web Site/Microsoft.Ccf.Csr.WebServices.AgentCredentials"> <system.webServer> <directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension" /> <handlers accessPolicy="Read, Execute, Script" /> <security> <authentication> <windowsAuthentication enabled="true" useKernelMode=”true” useAppPoolCredentials=”true”> <providers> <clear /> <add value="Negotiate" /> </providers> </windowsAuthentication> <anonymousAuthentication enabled="true" /> <digestAuthentication enabled="false" /> <basicAuthentication enabled="false" /> </authentication> </security> <defaultDocument enabled="true"> <files> <clear /> <add value="Default.htm" /> <add value="Default.asp" /> <add value="index.htm" /> <add value="index.html" /> <add value="iisstart.htm" /> <add value="default.aspx" /> </files> </defaultDocument> </system.webServer> </location>
-
เปลี่ยนแปลงการกำหนดค่าบริการเว็บ CCF ทั้งหมดตามที่อธิบายไว้ในบทความนี้ แทนแอตทริบิวต์ของเส้นทางสำหรับแต่ละองค์ประกอบที่ตั้ง โดยใช้แอตทริบิวต์ของเส้นทางที่เหมาะสม บริการเว็บ CCF ใน CCF 2009 ได้ต่อไปนี้:
-
Microsoft.Ccf.Csr.WebServices.AgentCredentials
-
Microsoft.Ccf.Csr.WebServices.AdminConsole
-
Microsoft.Ccf.Csr.WebServices.ContactCenterAIF
-
Microsoft.Ccf.Csr.WebServices.ContactCenter
-
Microsoft.Ccf.Csr.WebServices.Customer
-
Microsoft.Ccf.WebServices.Gateway
-
Microsoft.Ccf.Samples.DemoWebApplication
-
Microsoft.Ccf.Samples.MultichannelServer
-
Microsoft.Ccf.Samples.MultichannelSite
-
Microsoft.Ccf.Csr.WebServices.ContactCenter.AgentLoginManager
-
Microsoft.Ccf.ConfigurationSystem.Server.ConfigurationService
-
Microsoft.Ccf.ConfigManagementDataService
-
ข้อมูลเพิ่มเติม
ขั้นตอนในการทบทวนเกิดปัญหา
-
ตรวจสอบให้แน่ใจว่า คอมพิวเตอร์ไคลเอนต์ที่มีการติดตั้งโปรแกรมต่อไปนี้:
-
Windows XP Service Pack 3 (SP3)
-
.NET Framework 3.5 SP1
-
บนเดสก์ท็อปของบริษัทตัวแทน 2009 CCF หรือ MMC
-
-
ตรวจสอบให้แน่ใจว่า คอมพิวเตอร์เครื่องนั้นหนึ่งคือ CCF เว็บเซิร์ฟเวอร์ที่กำลังเรียกใช้ Windows Server 2003 SP2 หรือ Windows Server 2008 ตรวจสอบให้แน่ใจว่า คอมพิวเตอร์ที่มี SQL server 2005 ติดตั้งอยู่
-
ตรวจสอบให้แน่ใจว่า คอมพิวเตอร์เครื่องหนึ่งที่มีตัวควบคุมโดเมนที่กำลังเรียกใช้ Windows Server 2003 SP2 หรือ Windows Server 2008
-
ตรวจสอบให้แน่ใจว่า คอมพิวเตอร์ทั้งหมดจะถูกกำหนดค่า สำหรับการรับรองความถูกต้อง Kerberos หรือ สำหรับการรับรองความถูกต้องของ Windows
-
บนคอมพิวเตอร์ไคลเอ็นต์ที่มีการตั้งค่าคอนฟิกต่อไปนี้ เริ่มต้นบนเดสก์ท็อปของบริษัทตัวแทน:
-
แบบ SP1 .NET Framework 3.5 ติดตั้งอยู่
-
มีการติดตั้งบนเดสก์ท็อปของบริษัทตัวแทน 2009 CCF
-
Url ปลายทางในแฟ้มการกำหนดค่าเดสก์ท็อปของบริษัทตัวแทน (agentdesktop.exe.config) ที่ชี้ไปยังชื่อ NetBIOS จริงหรือ FQDN ของเซิร์ฟเวอร์ CCF IIS
-
อ้างอิง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำสั่งSetSPNแวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft:
http://technet.microsoft.com/en-us/library/cc773257.aspxสำหรับข้อมูลเพิ่มเติมเกี่ยวกับเครื่องมือสนับสนุนใน Windows 2003 SP1 แวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft:
http://support.microsoft.com/kb/892777สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแฟ้ม Kerbtray.exe ใน Windows 2003 Resource Kit แวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft:
http://www.microsoft.com/downloads/details.aspx?familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd