สำหรับบทความนี้จะนำเสนอ วิธีง่ายๆ 3 ขั้นตอน สามารถทำได้ไม่ยากโดยอาศัยคำสั่ง T-SQL ซึ่งมีขั้นตอนวิธีทำดังนี้
สำหรับคำสั่งในขั้นตอนต่างๆ จะใช้สิทธิ์ของผู้ใช้ ชื่อ sa
ทำการสร้างฐานข้อมูลเตรียมไว้โดยกำหนดชื่อ เป็น kasem_db
ขั้นตอนที่ 1
ให้ทำการสร้าง ชื่อล็อกอิน (Login Name) เช่น kasem (อยู่ภายใต้เซิร์ฟเวอร์ชื่อ SUPERMAN-TWIST)
โดยกำหนดรหัสผ่านเป็น P@ssw0d และกำหนดดีฟอล์ตฐานข้อมูลชื่อ kasem_db
USE
master
GO
CREATE
LOGIN [SUPERMAN-TWIST\kasem] WITH PASSWORD = 'P@ssw0d'
DEFAULT_DATABASE = [kasem_db]
GO
ต่อมาทำการสร้าง ชื่อผู้ใช้งานฐานข้อมูล (User Name) ปกติจะใช้ชื่อเดียวกันกับชื่อ ล็อกอินที่สร้างขึ้นก่อนหน้า เช่น kasem ให้กับฐานข้อมูล kasem_db
USE [kasem_db]
GO
CREATE
USER kasem FOR LOGIN kasem
GO
ขั้นตอนที่ 3
ทำการกำหนดบทบาทของผู้ใช้งานฐานข้อมูล (database role) สำหรับตัวอย่างนี้จะใช้บทบาทของ SQL Server ได้จัดเตรียมไว้ให้ ดังแสดงในตาราง
ทำการกำหนดบทบาทของผู้ใช้งานฐานข้อมูล (database role) สำหรับตัวอย่างนี้จะใช้บทบาทของ SQL Server ได้จัดเตรียมไว้ให้ ดังแสดงในตาราง
ตารางแสดงรายละเอียดของ Fixed
database role
Database Role
|
รายละเอียด
|
db_owner
|
กำหนดให้มีสิทธิ์ในการทำงานทุกอย่างในฐานข้อมูล
|
db_accessadmin
|
กำหนดให้มีสิทธิ์ในการ
เพิ่ม ลบ ผู้ใช้งานฐานข้อมูล รวมถึงบทบาทของผู้ใช้
|
db_securityadmin
|
กำหนดให้มีสิทธิ์ในการจัดการสิทธิ์ต่างๆ
ของผู้ใช้งานฐานข้อมูล
|
db_ddladmin
|
กำหนดให้มีสิทธิ์ในการใช้งานคำสั่งในกลุ่ม
Data
Definition Language (DDL)
|
db_backupoperator
|
กำหนดให้มีสิทธิ์ในสำรองข้อมูล
(backup)
|
db_datareader
|
กำหนดให้มีสิทธิ์ในการอ่านข้อมูลของตารางในฐานข้อมูล
|
db_datawriter
|
กำหนดให้มีสิทธิ์ในการ
เพิ่ม แก้ไข ลบ ข้อมูลในตารางของฐานข้อมูล
|
db_denydatareader
|
กำหนดให้ไม่สามารถอ่านข้อมูลของตารางในฐานข้อมูล
|
db_denydatawriter
|
กำหนดให้ไม่สามารถ
เพิ่ม แก้ไข ลบ ข้อมูลในตารางของฐานข้อมูล
|
ในที่นี้กำหนดบทบาทให้กับผู้ใช้ kasem เป็น db_owner โดยเขียนคำสั่งดังนี้
USE
TestDB
GO
EXECUTE
sp_addrolemember 'db_owner' , 'Kasem'
GO
หรือถ้าหากต้องการกำหนดเป็นอย่างอื่น เช่น ต้องการให้ทำได้เฉพาะ การเพิ่ม แก้ไข ลบข้อมูลในตาราง และสิทธิ์ในการสำรองข้อมูล ซึ่งต้องใช้บทบาทหลายๆ อย่าง ก็สามารถเขียนคำสั่งได้ดังนี้
USE
TestDB
GO
EXECUTE
sp_addrolemember 'db_datareader' , 'Kasem'
EXECUTE
sp_addrolemember 'db_datawriter' , 'Kasem'
EXECUTE
sp_addrolemember 'db_backupoperator' , 'Kasem'
GO
เพียงขั้นตอนง่ายๆ 3 ขั้นตอน คุณก็สามารถสร้างชื่อผู้ใช้งานฐานข้อมูลได้เอง
สวัสดีมีเงินใช้ ถึงอากาศจะร้อน แต่ใจเราอย่าใจร้อน