การเปลี่ยนรหัสผ่าน“ sa” ต้องการการเริ่ม SQL ใหม่ (ในโหมดผสม) หรือไม่?


14

เราค้นพบบัญชี SQL "sa" ที่ใช้งานในลักษณะที่ไม่ควรเป็นดังนั้นเราจึงเปลี่ยนรหัสผ่าน sa ในอินสแตนซ์ SQL ของเราทั้งหมด

(เรามี SQL 2005 ถึง 2017 เซิร์ฟเวอร์ที่ทำงานในโหมดการตรวจสอบสิทธิ์แบบผสมผู้ใช้และแอปพลิเคชันทั้งหมดควรใช้บัญชีโดเมนหรือบัญชี SQL ที่ไม่ใช่ sa เพื่อเชื่อมต่อฉันได้รับการตรวจสอบ แต่ไม่พบแอปอื่น ๆ ผู้ใช้หรือไม่ - spids ภายในโดยใช้บัญชี sa)

คำถามเล็กน้อย:

คำถามที่ 1: การเปลี่ยนรหัสผ่าน sa ต้องมีการรีสตาร์ท SQL หรือไม่

ฉันพบการอ้างอิงบางอย่างที่บอกว่าจำเป็นต้องเริ่มบริการ SQL ใหม่หลังจากเปลี่ยนรหัสผ่านบัญชี sa:

มันเป็นเรื่องจริงเหรอ? หรือเฉพาะในกรณีที่ฉันเปลี่ยนโหมดการตรวจสอบสิทธิ์ หรือเฉพาะถ้าฉันเข้าสู่ระบบเป็นประจำเป็น sa?

เธรด SQL Server Central นี้ยังแนะนำให้เปลี่ยนแปลงซึ่งอาจส่งผลกระทบต่องานตัวแทนของ SQL ที่มีอยู่และสิ่งอื่น ๆ นั่นเป็นข้อกังวลหรือไม่? หรือเฉพาะในกรณีที่มีใครบางคนเข้ารหัสบัญชี SA ลงในแพ็คเกจ SSIS หรืออะไรบางอย่าง

(ในกรณีที่มีความสำคัญเราใช้บัญชีโดเมนสำหรับบริการ SQL และบริการตัวแทน SQL และบัญชีพร็อกซีโดเมนสำหรับงานที่เรียกแพคเกจ SSIS หรือสคริปต์ PowerShell)

Q2: ฉันสามารถเปลี่ยนรหัสผ่าน sa ด้วยวิธี "ปกติ" ได้หรือไม่

ฉันสามารถรีเซ็ตได้เหมือนบัญชีอื่นหรือไม่? ใช้ SSMS หรือมากกว่านั้นทาง:

ALTER LOGIN sa WITH PASSWORD = 'newpass';

หรือฉันต้องเข้าสู่โหมดผู้ใช้คนเดียวหรือบางอย่างที่ต้องหยุดทำงานตามแผน (โปรดทราบว่าฉันจะเรียกใช้จากบัญชีโดเมนไม่ใช่ในขณะที่เชื่อมต่อเป็น "sa")

Q3: เราควรพยายามหมุนรหัสผ่านนี้เป็นประจำหรือไม่? หรือเมื่อเราพบปัญหาเท่านั้น

นี่เป็น "แนวทางปฏิบัติที่ดีที่สุด" ที่แนะนำหรือไม่

คำตอบ:


15

คำถามที่ 1: การเปลี่ยนรหัสผ่าน sa ต้องมีการรีสตาร์ท SQL หรือไม่

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

Q2: ฉันสามารถเปลี่ยนรหัสผ่าน sa ด้วยวิธี "ปกติ" ได้หรือไม่

ใช่เป็นเพียงบัญชีเข้าสู่ระบบ SQL อีกบัญชีหนึ่ง

Q3: เราควรพยายามหมุนรหัสผ่านนี้เป็นประจำหรือไม่? หรือเมื่อเราพบปัญหาเท่านั้น

ความจริงแล้วฉันจะปิดการใช้งานและเปลี่ยนชื่อล็อกอิน SA วิธีนี้จะไม่ถูกใช้งานเลยและหากคุณต้องการเข้าสู่ระบบที่มีสิทธิพิเศษสูงคุณสามารถสร้างได้ตามต้องการ


อย่าเปลี่ยนชื่อ แต่เป็นการปิดใช้งานมันเป็นความคิดที่ดีจริงๆ
Joshua

2
@Joshua การเปลี่ยนชื่อเป็นความคิดที่ดีโดยเฉพาะอย่างยิ่งหากคุณได้รับการตรวจสอบหรือเป็นส่วนหนึ่งของการปฏิบัติด้านความปลอดภัยอื่น ๆ ที่อาจจำเป็นต้องใช้เป็นส่วนหนึ่งของความพยายามปฏิบัติตามกฎระเบียบ
ฌอน Gallardy

2
ฉันใช้เวลามากเกินไปในการติดตามสิ่งที่แตกสลายเพราะมีคนเปลี่ยนชื่อบัญชีในตัวหลังจากใช้งานแล้ว
Joshua

@ โจชัวถ้าคุณเปลี่ยนชื่อและปิดการใช้งานเมื่อคุณสร้างมันที่จะไม่เป็นปัญหา แน่นอนว่านี่เป็นเพียงทางออกต่อไป การเปลี่ยนชื่อเดือนหรือปีต่อมาอาจเป็นปัญหาได้
James Jenkins

@JamesJenkins: อาดีที่คุณสนใจ
Joshua

7

นี่คือการปิดประตูโรงนาหลังจากม้าหายไปหมดแล้วคำถาม

คุณควรเปลี่ยนชื่อและปิดใช้งานบัญชี sa เมื่อคุณสร้างอินสแตนซ์

ทุกครั้งที่คุณมีบัญชีที่รู้จักกันดีเช่นผู้ดูแลระบบ Windows หรือ sa สำหรับ SQL Server คุณควรทำตามขั้นตอนบางอย่างเพื่อรักษาความปลอดภัย ลองดูเฉพาะสิ่งที่คุณควรทำกับ sa:

ตั้งรหัสผ่านที่เดายาก

เปลี่ยนชื่อ sa

ปิดใช้งาน sa

ตรวจสอบให้แน่ใจว่าไม่มีบัญชีอื่นชื่อ sa

แหล่ง

หากคุณรักษาบัญชี 'sa' เป็นวิธีฉุกเฉินในการเข้าถึง SQL มีวิธีที่ปลอดภัยกว่าดูที่: เชื่อมต่อกับ SQL Server เมื่อผู้ดูแลระบบถูกล็อกเอาต์หากคุณไม่มีการเข้าถึงบัญชีเครือข่ายคุณมีปัญหาใหญ่กว่า สามารถเชื่อมต่อกับ SQL


1
ฉันเห็นการเปลี่ยนชื่อ sa แต่จะไม่ปิดใช้งานเพราะจะทำให้ฉันไม่สามารถเชื่อมต่อได้หากการตรวจสอบความถูกต้องของโดเมนไม่สามารถใช้งานได้ในกรณีฉุกเฉิน (ไม่ใช่ว่าฉันสามารถจำได้ว่าเคยต้องทำเช่นนั้น แต่ฉันพยายามที่จะคาดการณ์ทั้งหมด)
BradC

@BradC แก้ไขในการอัปเดตความคิดเห็นของคุณ
James Jenkins

ขอบคุณเราจะพิจารณาเรื่องนี้สำหรับวิธีแก้ปัญหาระยะยาว
BradC

1
เป็นการยากถ้าไม่เป็นไปไม่ได้ที่การพิสูจน์ตัวจริงแบบรวมจะหยุดทำงานอย่างสมบูรณ์เนื่องจากบริการ SQL Server จะไม่ทำงานจนกว่าจะสามารถเข้าสู่ระบบได้คุณไม่จำเป็นต้องมีโดเมน Active Directory ในการใช้ Windows Integrated Authentication SQL Server สามารถตรวจสอบคุณกับหน่วยงานรักษาความปลอดภัยท้องถิ่น
Max Vernon
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.