สำนักวิทยบริการและเทคโนโลยีสารสนเทศ (สวส.)

Office of Academic Resources and Information Technology


Office of Academic Resources and Information Technology

รู้จักกับ Server Role และ Database Role

การกำหนด Server Role
เป็นการแบ่งกลุ่มมาตรฐานที่ SQL Server เตรียมไว้ให้ตามความสามารถในการจัดการกับ ตัวของระบบ มีด้วยกัน 8 กลุ่ม ดังนี้
 
1.sysadmin (System Administrators)
- เป็น Admin ของระบบ สามารถทำได้ทุกงานที่ SQL Server มีให้ทำ
 
2.serveradmin (Server Administrators)
- สามารถแก้ไข เปลี่ยนแปลงค่าคอนฟิกกูเรชั่น (Configuration) ต่าง ๆ ของระบบ
- สามารถสั่ง Shutdown ระบบได้
 
3.setupadmin (Setup Administrators)
- สามารถติดตั้งและคอนฟิก Linked Server รวมทั้ง Replication และกำหนดเกี่ยวกับ Stored Procedures ที่ใช้ในตอนเริ่มต้นของระบบ
 
4.securityadmin (Security Administrators)
- สามารถทำหน้าที่เกี่ยวกับระบบความปลอดภัย เช่น การสร้างและควบคุม login ดูแลสิทธิสำหรับการสร้างฐานข้อมูล รวมถึงการตรวจสอบ SQL Server error log
 
5.processadmin (Process Administrators)
- สามารถทำหน้าที่ควบคุมและดูแลความเป็นไปในการทำงานของระบบ รวมทั้งการ kill process ที่ไม่สมควรออกจากระบบ
 
6.dbcreator (Database Creators)
- สามารถทำหน้าที่จัดการฐานข้อมูล เช่น การสร้าง เปลี่ยนแปลง และลบ
 
7.diskadmin (Disk Administrators)
- ทำหน้าที่ในการกำหนด และจัดการเกี่ยวกับไฟล์ฐานข้อมูล เช่น การกำหนดลักษณะการขยายขนาดฐานข้อมูลด้วยค่า File Growth การนำเข้าฐานข้อมูล (Attach) หรือออก (Detach) จากระบบได้
 
8.bulkadmin (Bulk Insert Administrators)
- ทำคำสั่งเกี่ยวกับ operation Bulk เช่น Bulk Insert
 
การกำหนด Database Role
เป็นการจัดแบ่งกลุ่มความสามารถตามการใช้งานของแต่ละฐานข้อมูล แบ่งออกเป็น 2 ประเภท ดังนี้
- Pre-Defined Database Role
- User-Defined Database Role
 
Pre-Defined Database Role
มีด้วยกัน 9 กลุ่ม ดังนี้
db_owner                             
- ทำหน้าที่ทุกอย่างภายในขอบเขตสำหรับฐานข้อมูลนั้น ๆ รวมถึงการมอบอำนาจให้กับผู้อื่น เข้ามามีสิทธิใน object ที่อนุญาตได้
db_accessadmin                  
- ทำหน้าที่อนุญาตให้ User เข้าถึงฐานข้อมูลได้ หรือเป็นผู้ที่คอยแก้ไขความสามารถในการเข้าถึงฐานข้อมูล ตามสิทธิของแต่ละ user
db_securityadmin                              
- ทำหน้าที่เกี่ยวกับการจัดการระบบรักษาความปลอดภัยภายในฐานข้อมูล เช่น การกำหนด permission, Role และ Object owner ต่าง ๆ
db_ddladmin                       
- ทำหน้าที่จัดการเกี่ยวกับ object ต่าง ๆ ภายในฐานข้อมูล ทั้งการสร้าง เปลี่ยนแปลงแก้ไข ตลอดจนการลบ หรือทำลาย object
db_backupoperator           
- ทำหน้าที่เกี่ยวกับการ backup ฐานข้อมูล
db_datareader                    
- สามารถอ่านข้อมูลจากตารางหรือ view ภายในฐานข้อมูลได้เท่านั้น
db_datawriter                     
- สามารถ insert, delete และ update ข้อมูลผ่านตารางหรือ view ในฐานข้อมูลได้
db_denydatareader                            
- ไม่สามารถอ่านข้อมูลจากตารางหรือ view ภายในฐานข้อมูลได้
db_denywriter                    
- ไม่สามารถทำการแก้ไขหรือเปลี่ยนแปลงข้อมูลด้วยการ insert, delete และ update ข้อมูลผ่าน ตารางหรือ view ในฐานข้อมูลได้
 
User-Defined Database Role
เป็นการกำหนด database role นอกเหนือจากกลุ่มมาตรฐานที่ SQL Server กำหนดให้ เราสามารถสร้างกลุ่มหรือ Role ขึ้นมาได้เองด้วย EM
.