คุณสามารถอนุญาต อนุญาต มอบหมายหรือเพิกถอนวัตถุจำนวนมากในฐานข้อมูลของ SQL Server บทความนี้จะแสดงวิธีกระจายอำนาจและเพิกถอนการอนุญาต
กระจายอำนาจบนโต๊ะ
สามารถกำหนดสิทธิ์ให้กับผู้ใช้ในตารางด้วยสิทธิ์ที่ได้รับ ได้แก่ SELECT, INSERT, UPDATE, DELETE, REFERENCES, ALTER หรือ ALL
ไวยากรณ์
GRANT
quyen ON doi_tuong TO nguoi_dung;
Quyen
การอนุญาตที่ระบุสำหรับผู้ใช้ อาจจะ:
ถูกต้อง คำอธิบาย ความสามารถในการดำเนินการคำสั่ง SELECT บนตาราง INSERT ความสามารถในการดำเนินการคำสั่ง INSERT บนตาราง UPDATE ความสามารถในการดำเนินการคำสั่ง UPDATE บนตาราง DELETE ความสามารถในการดำเนินการคำสั่ง DELETE บนตาราง ข้อมูลอ้างอิง ความสามารถในการสร้างข้อจำกัดที่อ้างถึงตาราง ALTER ความสามารถในการดำเนินการคำสั่ง ALTER TABLE บน ตารางเพื่อเปลี่ยนคำจำกัดความของตาราง ALL ALL ไม่ได้ให้สิทธิ์ทั้งหมดบนโต๊ะแต่ให้สิทธิ์ภายใต้มาตรฐาน ANSI-92 รวมถึง SELECT, INSERT, UPDATE, DELETE และ REFERENCESSubjects
ชื่อของวัตถุฐานข้อมูลที่คุณต้องการเพิ่มขีดความสามารถ กรณีการเสริมอำนาจบนโต๊ะเป็นชื่อโต๊ะ
nguoi_dung
ชื่อผู้ใช้จะได้รับสิทธิ์
ตัวอย่างเช่น
ถ้าคุณต้องการให้สิทธิ์ SELECT, INSERT, UPDATE และ DELETE บนตารางสำหรับผู้ใช้เป็น smithj ให้เรียกใช้คำสั่ง GRANT ด้านล่าง
G RANT SELECT, INSERT, UPDATE, DELETE ON nhanvien TO smithj;
คุณสามารถใช้คีย์เวิร์ด ALL เพื่อระบุว่าคุณต้องการให้สิทธิ์ทั้งหมดภายใต้ ANSI-92 แก่ผู้ใช้ smithj
GRANT ALL ON nhanvien TO smithj;
ถ้าคุณต้องการให้สิทธิ์ SELECT บนโต๊ะสำหรับผู้ใช้ทั้งหมด ให้มอบให้กับกลุ่มสิทธิ์สาธารณะ (PUBLIC)
GRANT SELECT ON nhanvien
TO PUBLIC;
ดูเพิ่มเติมที่:วิธีกระจายอำนาจผู้ใช้ใน MS SQL Server
เพิกถอนการอนุญาตบนกระดาน
หลังจากการเสริมอำนาจแล้ว คุณอาจต้องการเพิกถอนสิทธิ์ที่กำหนดด้วยคำสั่ง REVOKE ถอนการอนุญาต SELECT, INSERT, UPDATE, DELETE, REFERENCES, ALTER หรือ ALL ออก
ไวยากรณ์
REVOKE quyen ON doi_tuong FROM nguoi_dung;
Quyen
สิทธิ์จะถูกเพิกถอน อาจเป็นไปได้:
ถูกต้อง คำอธิบาย ความสามารถในการดำเนินการคำสั่ง SELECT บนตาราง INSERT ความสามารถในการดำเนินการคำสั่ง INSERT บนตาราง UPDATE ความสามารถในการดำเนินการคำสั่ง UPDATE บนตาราง DELETE ความสามารถในการดำเนินการคำสั่ง DELETE บนตาราง ข้อมูลอ้างอิง ความสามารถในการสร้างข้อจำกัดที่อ้างถึงตาราง ALTER ความสามารถในการดำเนินการคำสั่ง ALTER TABLE บน ตารางเพื่อเปลี่ยนคำจำกัดความของตาราง ALL ALL ไม่ได้ให้สิทธิ์ทั้งหมดบนโต๊ะแต่ให้สิทธิ์ภายใต้มาตรฐาน ANSI-92 รวมถึง SELECT, INSERT, UPDATE, DELETE และ REFERENCESSubjects
ชื่อของวัตถุฐานข้อมูลที่คุณต้องการเพิกถอนการอนุญาต กรณีการเสริมอำนาจบนโต๊ะเป็นชื่อโต๊ะ
nguoi_dung
ชื่อผู้ใช้จะถูกเพิกถอน
ตัวอย่างเช่น
ถ้าคุณต้องการเพิกถอนการอนุญาต DELETE ในบัญชีผู้ใช้ของผู้ใช้ anderson ให้เรียกใช้คำสั่ง REVOKE ด้านล่าง
REVOKE DELETE ON the user FROM anderson;
หากคุณต้องการเพิกถอนสิทธิ์ภายใต้ ANSI-92 ในตารางผู้ใช้สำหรับผู้ใช้และ userj ให้ใช้คีย์เวิร์ด ALL เรียกใช้คำสั่ง GRANT ด้านล่าง
REVOKE ALL ON the user FROM
anderson;
หากคุณให้สิทธิ์ SELECT แก่กลุ่มผู้ใช้สาธารณะ (ผู้ใช้ทั้งหมด) ในตารางผู้ใช้และต้องการเพิกถอนการอนุญาตนี้ ให้ใช้คำสั่ง REVOKE ด้านล่าง
REVOKE SELECT ON the user FROM PUBLIC;