การแก้ไข: การเข้าถึงเฉพาะกิจโฆษณาไม่ถูกต้องอนุญาตหากคีย์รีจิสทรี DisallowAdhocAccess ขาดหายไป

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 328569 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
bug #: 361943 (shiloh_bugs)

bug #: 102857 (sqlbug_70)
ขยายทั้งหมด | ยุบทั้งหมด

อาการ

เมื่อคุณกำหนดค่าที่ผู้ให้บริการ OLE DB สำหรับใช้สำหรับการสอบถาม SQL Server ที่กระจาย หมายเลขของรีจิสทรีคีย์พร้อมใช้งาน ซึ่งควบคุมว่า SQL Server พยายามที่จะใช้ตัวให้บริการ ตัวเลือกเหล่านี้จะได้รับการบันทึกไว้ในส่วนของ SQL Server หนังสือออนไลน์ต่อไปนี้:
  • การกำหนดค่าผู้ให้บริการ OLE DB สำหรับแบบสอบถามที่วางจำหน่าย
ตัวเลือกเหล่านี้ได้ อย่างใดอย่างหนึ่งDisallowAdhocAccessควบคุมว่า ผู้ใช้ที่ไม่ใช่ sysadmin จะได้รับอนุญาตให้ใช้ OPENROWSET หรือฟังก์ชัน OPENDATASOURCE อนุญาตหากผู้ให้บริการ OLE DB ที่มีอยู่บนคอมพิวเตอร์ แต่ไม่มีคีย์รีจิสทรีสอดคล้องกันที่ระบุไว้สำหรับผู้ให้บริการนี้ แล้ว SQL Server อย่างไม่ถูกต้องให้ผู้ใช้ที่ไม่ใช่ sysadmin OPENROWSET ที่หรือฟังก์ชัน OPENDATASOURCE จากผู้ให้บริการการเข้าถึง ในการขาดงานของคีย์รีจิสทรีใด ๆ ลักษณะการทำงานเริ่มต้นควรมีการ ปฏิเสธการเข้าถึง

หลังจากที่คุณติดตั้งโปรแกรมแก้ไขด่วนที่อธิบายไว้ในบทความนี้ เมื่อนั้นDisallowAdhocAccessค่าไม่มีอยู่สำหรับตัวให้บริการที่ระบุ ร้องขอไม่ sysadmin ใช้ OPENROWSET หรือ OPENDATASOURCE ล้มเหลว ด้วยข้อความแสดงข้อผิดพลาดต่อไปนี้:
เซิร์ฟเวอร์: ข่าวสารเกี่ยวกับ 7415 ระดับ 16 สถานะ 1 บรรทัด 1
ผู้ให้บริการ OLE DB 'CustomOLEDBProvider' โหมด ad hoc เข้าถึงถูกปฏิเสธ คุณต้องเข้าถึงตัวให้บริการนี้ผ่านเซิร์ฟเวอร์ที่ถูกเชื่อมโยง

การแก้ไข

เมื่อต้องการแก้ไขปัญหานี้ ขอรับ service pack ล่าสุดสำหรับ Microsoft SQL Server 2000 สำหรับข้อมูลเพิ่มเติม ให้คลิกหมายเลขบทความต่อไปนี้ เพื่อดูบทความในฐานความรู้ของ Microsoft::
290211INF: วิธีการรับล่าสุด SQL Server 2000 Service Pack

สถานะ

Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วนเริ่มต้นของเอกสารนี้
SQL Server 2000
ปัญหานี้ถูกแก้ไขใน Microsoft SQL Server 2000 Service Pack 3 ครั้งแรก

ข้อมูลเพิ่มเติม

เริ่มต้น การDisallowAdhocAccessคีย์รีจิสทรีไม่มีอยู่ใน SQL Server 7.0 อย่างไรก็ตาม มันถูกเพิ่มใน SQL Server 7.0 Service Pack 2 อนุญาตสำหรับความเข้ากันได้ย้อนหลัง ถ้าคีย์นี้ไม่พบ SQL Server 7.0 ยังให้การเข้าถึงตัวให้บริการ SQLOLEDB เนื่องจากมีการรับรองความถูกเซิร์ฟเวอร์ระยะไกลจะก่อนอื่นต้องคุณ โดยใช้ข้อมูลประจำตัวการรักษาความปลอดภัยที่ให้มา โดยค่าเริ่มต้น การติดตั้ง SQL Server 2000 รวมDisallowAdhocAccessคีย์ (ดังนั้น ที่อนุญาตให้เข้าถึง) ถ้าคีย์รีจิสทรีจะถูกเอาออกสำหรับผู้ให้บริการ SQLOLEDB บนการติดตั้ง SQL Server 2000 ได้ปฏิเสธการเข้าถึง ตามที่คุณต้องการสำหรับทุกผู้ให้บริการอื่น ๆ

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

HKEY_LOCAL_MACHINE\Software\Microsoft\ชื่ออินสแตนซ์> \Providers\ชื่อของผู้ให้บริการ>
โดย:ชื่ออินสแตนซ์> คือชื่อของอินสแตนซ์ของ SQL Server (MSSQLServer สำหรับอินสแตนซ์ที่เริ่มต้น) และชื่อของผู้ให้บริการ> คือชื่อของผู้ให้บริการ OLE DB ที่ระบุไว้ใน OPENROWSET หรือฟังก์ชัน OPENDATASOURCE

คุณสมบัติ

หมายเลขบทความ (Article ID): 328569 - รีวิวครั้งสุดท้าย: 13 มกราคม 2554 - Revision: 3.0
ใช้กับ
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
Keywords: 
kbhotfixserver kbqfe kbbug kbfix kbsqlserv2000presp3fix kbsqlserv2000sp3fix kbmt KB328569 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:328569

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com