Microsoft sql เพิ่มผู้ใช้ การได้รับสิทธิ์ผู้ดูแลระบบใน Microsoft SQL Server กำลังเริ่มอินสแตนซ์ในโหมดปกติ

ที่ไมโครซอฟต์ เซิร์ฟเวอร์ SQL DBA กล่าวเสริม บัญชีกับอินสแตนซ์ของ SQL Server บัญชีเหล่านี้จะถูกแมปกับผู้ใช้ในฐานข้อมูลที่แยกจากกันในอินสแตนซ์ของ SQL Server ผู้ใช้ฐานข้อมูลที่สร้างตารางและคลาสออบเจ็กต์ต้องมีสิทธิ์ที่เหมาะสมในการสร้างออบเจ็กต์ในฐานข้อมูลและสคีมาที่จะสร้างออบเจ็กต์เหล่านั้น เมื่อใช้ใน ArcGIS ชื่อสคีมาจะต้องตรงกับชื่อผู้ใช้ฐานข้อมูล

คุณสามารถใช้เครื่องมือหรือสคริปต์การประมวลผลทางภูมิศาสตร์สำหรับสิ่งนี้ สร้างผู้ใช้ฐานข้อมูลเพื่อดำเนินการดังต่อไปนี้:

  • สร้างหรือเพิ่มบัญชีไปยังอินสแตนซ์ SQL Server
  • สร้างผู้ใช้ที่สอดคล้องกับบัญชีที่ระบุ
  • สร้างสคีมาการแมปสำหรับผู้ใช้ในฐานข้อมูลที่ระบุ
  • ให้สิทธิ์แก่ผู้ใช้ที่จำเป็นในการสร้างตาราง คลาสอ็อบเจ็กต์ หรือมุมมองในฐานข้อมูลที่ระบุ

เพิ่มผู้ใช้ที่สามารถสร้างข้อมูลได้

คุณสามารถเรียกใช้เครื่องมือจาก ArcGIS for Desktop หรือเรียกใช้เครื่องมือในสคริปต์ Python เพื่อสร้างผู้ใช้ฐานข้อมูลที่สามารถสร้างตาราง คลาสฟีเจอร์ และมุมมองได้

คุณต้องเชื่อมต่อกับฐานข้อมูลโดยใช้บัญชีที่มีสิทธิ์ ผู้ดูแลระบบในอินสแตนซ์ SQL Server ของคุณเพื่อเรียกใช้เครื่องมือ สร้างผู้ใช้ฐานข้อมูลเครื่องมือ.

หากคุณต้องการสร้างผู้ใช้ฐานข้อมูลภูมิศาสตร์ด้วยบัญชี Windows ต้องมีบัญชีที่เหมาะสมอยู่แล้วก่อนที่คุณจะเรียกใช้เครื่องมือ

การใช้เครื่องมือ สร้างผู้ใช้ฐานข้อมูล

  1. เปิด ArcMap หรือ ArcCatalog
  2. เชื่อมต่อกับฐานข้อมูลหรือฐานข้อมูลทางภูมิศาสตร์โดยใช้บัญชีที่มีสิทธิ์ผู้ดูแลระบบบนอินสแตนซ์ของ SQL Server
  3. เปิดเครื่องมือ สร้างผู้ใช้ฐานข้อมูล.

    เครื่องมือนี้อยู่ในชุดเครื่องมือการดูแลฐานข้อมูลภูมิศาสตร์ของชุดการจัดการข้อมูล

  4. ระบุการเชื่อมต่อฐานข้อมูลของคุณในฟิลด์ การเชื่อมต่อฐานข้อมูลอินพุต.
  5. เลือกว่าคุณจะสร้างบัญชีที่มีการตรวจสอบความถูกต้องของ SQL Server หรือใช้บัญชีที่มีอยู่กับการตรวจสอบความถูกต้องของ Windows
    • ปล่อยว่างไว้โดยไม่เลือกเพื่อสร้างผู้ใช้ที่มีการรับรองความถูกต้องของ SQL Server โปรดทราบว่าตามค่าเริ่มต้น อินสแตนซ์ SQL Server จะใช้การรับรองความถูกต้องของ Windows เท่านั้น หากอินสแตนซ์ของคุณไม่ได้รับการกำหนดค่าให้ใช้การรับรองความถูกต้องของ SQL Server หรือ Windows คุณจะไม่สามารถสร้างผู้ใช้ที่ได้รับการรับรองความถูกต้องของฐานข้อมูลได้
    • ตรวจสอบ สร้างผู้ใช้ด้วยวิธีการตรวจสอบสิทธิ์ ระบบปฏิบัติการ(สร้างระบบปฏิบัติการที่รับรองความถูกต้องของผู้ใช้)เพื่อใช้บัญชีที่มีอยู่กับการรับรองความถูกต้องของ Windows
  6. ป้อนชื่อผู้ใช้ฐานข้อมูลที่จะสร้างโดยเครื่องมือ

    หากคุณเลือกที่จะสร้างบัญชีด้วยการรับรองความถูกต้องของ SQL Server ชื่อที่คุณป้อนจะถูกใช้สำหรับบัญชีนั้นด้วย

  7. ป้อนรหัสผ่านผู้ใช้ฐานข้อมูล
  8. หากคุณมีบทบาทที่กำหนดไว้อยู่แล้วซึ่งคุณต้องการเพิ่มผู้ใช้ ให้ระบุบทบาทนั้น
  9. คลิกตกลงเพื่อเรียกใช้เครื่องมือ

เรียกใช้สคริปต์ Python

หากต้องการสร้างผู้ใช้โดยใช้สคริปต์ ให้ทำตามขั้นตอนเหล่านี้:

  1. สร้าง ไฟล์ข้อความบนเครื่องไคลเอนต์ ArcGIS และคัดลอกสคริปต์ต่อไปนี้ไปยังไฟล์

    """ ชื่อ: create_database_user.py คำอธิบาย: ให้ข้อมูลการเชื่อมต่อแก่ผู้ใช้ฐานข้อมูล พิมพ์ create_database_user.py -h หรือ create_database_user.py --help สำหรับการใช้งาน """ # นำเข้าโมดูลระบบ import arcpy import os import optparse import sys # กำหนดการใช้งานและเวอร์ชัน parser = optparse . OptionParser (usage = "usage: %prog " , version = "%prog 1.0 for 10.1 release" ) #Define help and ตัวแยกวิเคราะห์ตัวเลือก . add_option ("--DBMS" , dest = "Database_type" , type = "choice" , choices = [ "SQLSERVER" , "ORACLE" , "POSTGRESQL" , "" ] default = "" , help = "ประเภทขององค์กร DBMS: SQLSERVER, ORACLE หรือ POSTGRESQL")พาร์เซอร์ add_option ("-i" , dest = "Instance" , type = "string" , default = "" , help = "ชื่ออินสแตนซ์ DBMS" ) parser add_option("-D" , dest = "ฐานข้อมูล" , type = "string" , default = "none" , help = "ชื่อฐานข้อมูล: ไม่จำเป็นสำหรับ Oracle")พาร์เซอร์ add_option ("--auth" , dest = "Account_authentication" , type = "choice" , choices = [ "DATABASE_AUTH" , "OPERATING_SYSTEM_AUTH" ] default = "DATABASE_AUTH" , help = "ตัวเลือกประเภทการรับรองความถูกต้อง (คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่): DATABASE_AUTH, OPERATING_SYSTEM_AUTH Default=DATABASE_AUTH")พาร์เซอร์ add_option ("-U" , dest = "Dbms_admin" , type = "string" , default = "" , help = "ผู้ใช้ผู้ดูแลระบบ DBMS" ) parser add_option ("-P" , dest = "Dbms_admin_pwd" , type = "string" , default = "" , help = "รหัสผ่านผู้ดูแลระบบ DBMS" ) parser add_option ("--utype" , dest = "user_type" , type = "choice" , ตัวเลือก = [ "DATABASE_USER" , "OPERATING_SYSTEM_USER" ], default = "DATABASE_USER" , help = "ตัวเลือกประเภทการรับรองความถูกต้อง (คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่): DATABASE_USER, OPERATING_SYSTEM_USER Default=DATABASE_USER")พาร์เซอร์ add_option ("-u" , dest = "dbuser" , type = "string" , default = "" , help = "ชื่อผู้ใช้ฐานข้อมูล" ) parser add_option ("-p" , dest = "dbuser_pwd" , type = "string" , default = "" , help = "รหัสผ่านผู้ใช้ฐานข้อมูล" ) parser add_option ("-r" , dest = "role" , type = "string" , default = "" , help = "บทบาทที่จะมอบให้กับผู้ใช้")พาร์เซอร์ add_option ("-t" , dest = "Tablespace" , type = "string" , default = "" , help = "ชื่อ Tablespace" ) # ตรวจสอบว่าป้อนค่าสำหรับตัวเลือกหรือไม่ลอง: (ตัวเลือก, args) = parser parse_args() #ตรวจสอบว่าไม่มีการป้อนข้อโต้แย้งของระบบ (ตัวเลือก) หรือไม่ if len (sys .argv ) == 1 : print " %s : error: %s \n " % (sys .argv [ 0 ], "No command options specified" ) parser print_help () ระบบ ทางออก(3) #พารามิเตอร์การใช้งานสำหรับการเชื่อมต่อฐานข้อมูลเชิงพื้นที่ Database_type = ตัวเลือก ฐานข้อมูล_ประเภท อินสแตนซ์บน () = ตัวเลือก ฐานข้อมูลอินสแตนซ์ = ตัวเลือก ฐานข้อมูล ต่ำกว่า () account_authentication = ตัวเลือก บัญชี_การรับรองความถูกต้อง บน() dbms_admin = ตัวเลือก Dbms_admin dbms_admin_pwd = ตัวเลือก Dbms_admin_pwd dbuser = ตัวเลือก dbuser dbuser_pwd = ตัวเลือก dbuser_pwd tablespace = ตัวเลือก user_type พื้นที่ตาราง = ตัวเลือก user_type บทบาท = ตัวเลือก บทบาท if (database_type == "SQLSERVER" ): Database_type = "SQL_SERVER" if ( Database_type == "" ): พิมพ์ (" \n %s : ข้อผิดพลาด: \n %s \n " % (sys .argv [ 0 ] , "ต้องระบุประเภท DBMS (--DBMS)")) ตัวแยกวิเคราะห์ print_help () ระบบ ออก (3 ) if (database_type == "SQL_SERVER" ): if ( account_authentication == "DATABASE_AUTH" และ dbms_admin == "" ): print (" \n %s : error: %s \n " % (sys .argv [0], "ต้องระบุผู้ดูแลระบบ DBMS ด้วยการตรวจสอบฐานข้อมูล"))ระบบ ออก (3 ) if ( account_authentication == "OPERATING_SYSTEM_AUTH" และ dbms_admin != "" ): print (" \n คำเตือน: %s \n " % ( "ละเว้นผู้ดูแลระบบ DBMS ที่ระบุเมื่อใช้ ระบบปฏิบัติการการรับรองความถูกต้อง...")) else : if ( dbuser . lower () == "" ): print (" \n %s : ข้อผิดพลาด: %s \n " % (sys .argv [ 0 ], "ต้องระบุผู้ใช้ฐานข้อมูล"))ระบบ ออก (3 ) ถ้า ( dbms_admin == "" ): พิมพ์ (" \n %s : ข้อผิดพลาด: %s \n " % (sys .argv [ 0 ], "ต้องระบุผู้ดูแลระบบ DBMS!"))ระบบ exit (3 ) if ( user_type == "DATABASE_USER" และ (dbuser == "" หรือ dbuser_pwd == "" )): print (" \n %s : error: \n %s \n " % (sys .argv [0], "ในการสร้างผู้ใช้ที่ได้รับการรับรองความถูกต้องของฐานข้อมูล จะต้องระบุชื่อผู้ใช้และรหัสผ่าน!")) ตัวแยกวิเคราะห์ print_help () ระบบ ทางออก(3) # รับใบอนุญาตผลิตภัณฑ์ปัจจุบัน product_license = อาร์คปี้ ข้อมูลผลิตภัณฑ์() # ตรวจสอบระดับใบอนุญาตที่จำเป็นถ้า product_license upper() == "ARCVIEW" หรือ product_license upper () == "ENGINE" : print (" \n " + product_license + " พบใบอนุญาต!" + "การสร้างผู้ใช้ในฐานข้อมูลทางภูมิศาสตร์หรือฐานข้อมูลระดับองค์กรต้องใช้ ArcGIS for Desktop Standard หรือ Advanced, ArcGIS Engine พร้อมส่วนขยาย Geodatabase Update หรือใบอนุญาต ArcGIS for Server")ระบบ ออก( "ให้สิทธิ์ ArcGIS อีกครั้งก่อนที่จะสร้างผู้ใช้ฐานข้อมูล") else : พิมพ์ (" \n " + product_license + "ใบอนุญาตพร้อมใช้งาน! สร้างต่อไป...") อาร์ปี AddMessage ("++++++++++") # ตัวแปรท้องถิ่น instance_temp = instance แทนที่ ( " \\ " , "_" ) instance_temp = instance_temp แทนที่ ("/" , "_" ) instance_temp = instance_temp แทนที่ (/// , "_" ) Conn_File_NameT = instance_temp + "_" + ฐานข้อมูล + "_" + dbms_admin ถ้า os สภาพแวดล้อม get ("TEMP" ) == ไม่มี : temp = "c:\\temp" else : temp = os สภาพแวดล้อม รับ ("TEMP") ถ้า os สภาพแวดล้อม get ("TMP" ) == ไม่มี : temp = "/usr/tmp" else : temp = os สภาพแวดล้อม รับ ( "TMP") Connection_File_Name = Conn_File_NameT + ".sde" = temp + os กันยายน + Conn_File_NameT + ".sde" # ตรวจสอบไฟล์ .sde และลบทิ้งหากมีอาร์ปี้ สิ่งแวดล้อม overwriteOutput = True ถ้า os เส้นทาง. มีอยู่ ( Connection_File_Name_full_path): ระบบปฏิบัติการ ลบ( Connection_File_Name_full_path) ลอง : print (" \n กำลังสร้างไฟล์การเชื่อมต่อฐานข้อมูล...\n") # กระบวนการ: สร้างไฟล์การเชื่อมต่อฐานข้อมูล... # การใช้งาน: out_file_location, out_file_name, DBMS_TYPE, instnace, ฐานข้อมูล, account_authentication, ชื่อผู้ใช้, รหัสผ่าน, save_username_password (ต้องเป็นจริง) #arcpy.CreateDatabaseConnection_management(temp , Connection_File_Name, Database_type, อินสแตนซ์, ฐานข้อมูล, account_authentication, dbms_admin, dbms_admin_pwd, "TRUE")อาร์ปี้ สร้างฐานข้อมูลการเชื่อมต่อ_การจัดการ(out_folder_path = temp , out_name = Connection_File_Name , Database_platform = Database_type , instance = instance , ฐานข้อมูล = ฐานข้อมูล , account_authentication = account_authentication , ชื่อผู้ใช้ = dbms_admin , รหัสผ่าน = dbms_admin_pwd , save_user_pass = "TRUE" ) สำหรับฉันในช่วง (arcpy . GetMessageCount ()) : ถ้า "000565" ใน arcpy รับข้อความ(i): #ตรวจสอบว่าการเชื่อมต่อฐานข้อมูลสำเร็จหรือไม่อาร์ปี้ AddReturnMessage (i) เส้นโค้ง เพิ่มข้อความ (" \n +++++++++" ) arcpy AddMessage ("ออก!!" ) arcpy . เพิ่มข้อความ ("++++++++++ \n " ) sys ออก (3) อื่น ๆ : arcpy AddReturnMessage (i) เส้นโค้ง AddMessage ("++++++++++ \n " ) พิมพ์ ( "กำลังสร้างผู้ใช้ฐานข้อมูล... \n " ) arcpy สร้างฐานข้อมูลผู้ใช้_การจัดการ (input_workspace= Connection_File_Name_full_path, user_authentication_type = ผู้ใช้_ประเภท , ชื่อผู้ใช้= ดีบัสเซอร์, ผู้ใช้_รหัสผ่าน= dbuser_pwd, บทบาท= บทบาท, tablespace_name= พื้นที่โต๊ะ) สำหรับ ฉัน ใน พิสัย(อาร์ปี้. รับข้อความนับ()): อาร์ปี้. เพิ่มข้อความส่งคืน(ฉัน) อาร์ปี้. เพิ่มข้อความ("+++++++++ \n" ) ยกเว้น: สำหรับ ฉัน ใน พิสัย(อาร์ปี้. รับข้อความนับ()): อาร์ปี้. เพิ่มข้อความส่งคืน(ฉัน) #ตรวจสอบว่าไม่ได้ป้อนค่าสำหรับตัวเลือกหรือไม่ ยกเว้น ระบบออก เช่น : ถ้า . รหัส == 2 : ตัวแยกวิเคราะห์. การใช้งาน = "" พิมพ์(" \n" ) ตัวแยกวิเคราะห์. print_help() ตัวแยกวิเคราะห์. ออก(2 )

    คุณสามารถรันสคริปต์บนคอมพิวเตอร์ด้วย ArcGIS สำหรับเดสก์ท็อป(มาตรฐานหรือขั้นสูง) ArcGIS สำหรับเซิร์ฟเวอร์(มาตรฐานหรือขั้นสูง) หรือ ArcGIS Engine ด้วย โมดูลเพิ่มเติมอัพเดตฐานข้อมูลภูมิศาสตร์

  2. บันทึกไฟล์ที่มีนามสกุล .ไพ.
  3. รันสคริปต์ โดยระบุตัวเลือกและข้อมูลที่เหมาะสมสำหรับอินสแตนซ์ของ SQL Server ของคุณและผู้ใช้ที่คุณต้องการสร้าง

    ในตัวอย่างต่อไปนี้ ชื่อของสคริปต์ที่สร้างขึ้นคือ create_database_user.py บัญชีที่มีการตรวจสอบสิทธิ์ SQL Server (gisd_owner) ได้ถูกสร้างขึ้นบนอินสแตนซ์ SQL Server ssi5 และสคีมาและผู้ใช้ที่เกี่ยวข้องได้ถูกสร้างขึ้นในฐานข้อมูล gisdata ยังไม่ได้เพิ่มผู้ใช้ในบทบาท

    create_database_user.py --DBMS SQL_SERVER -i ssi5 -D gisdata --auth DATABASE_AUTH -U sa -P !nocopy! --utype DATABASE_USER -u gisd_owner -p T3mpPass

    เบาะแส:

    เข้า -ชมหรือ --ช่วยวี บรรทัดคำสั่งเพื่อแสดงวิธีใช้ไวยากรณ์

ขณะนี้ฐานข้อมูลของคุณมีผู้ใช้ที่สามารถสร้างตารางได้

เจ้าของข้อมูลสามารถสร้างตารางในฐานข้อมูลหรือฐานข้อมูลภูมิศาสตร์ได้หลายวิธี สำหรับข้อมูลเกี่ยวกับการสร้างตารางโดยใช้ ArcGIS โปรดดูภาพรวมของการเพิ่มชุดข้อมูลลงในฐานข้อมูลภูมิศาสตร์

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

การสร้างบัญชีและผู้ใช้โดยใช้เครื่องมือ SQL Server

หากคุณต้องการสร้างผู้ใช้ที่มีสิทธิ์แตกต่างจากที่ได้รับจากเครื่องมือ สร้างผู้ใช้ฐานข้อมูลหรือไม่มีสิทธิ์ได้รับโดยตรง คุณสามารถใช้เครื่องมือ SQL Server สำหรับสิ่งนี้ได้ มีบางสิ่งที่ควรคำนึงถึงเมื่อสร้างบัญชีของคุณเองและผู้ใช้เพื่อใช้กับ ArcGIS:

  • ผู้ใช้ฐานข้อมูลทั้งหมดที่จะสร้างข้อมูลต้องมีสคีมาฐานข้อมูล สคีมานี้ต้องมีชื่อเดียวกันกับผู้ใช้
  • คุณสามารถให้กลุ่ม การเข้าถึงวินโดวส์ไปยัง SQL Server แทนที่จะใช้บัญชี Windows แยกกัน ทำให้สร้างและจัดการบัญชีได้ง่ายขึ้น สมาชิกทุกท่าน กลุ่มวินโดวส์สามารถเชื่อมต่อกับ SQL Server ได้ สิทธิ์การเข้าถึงเซิร์ฟเวอร์ ฐานข้อมูล หรือชุดข้อมูลที่ให้กับกลุ่มจะถูกนำไปใช้กับสมาชิกแต่ละคนของกลุ่มโดยอัตโนมัติ อย่างไรก็ตาม คุณไม่สามารถสร้างสคีมาเดียวเพื่อจัดเก็บข้อมูลที่สร้างโดยสมาชิกกลุ่มทั้งหมดได้ ผู้ใช้แต่ละคนในกลุ่มที่สร้างข้อมูลในฐานข้อมูลภูมิศาสตร์จะต้องมีสคีมาของตนเองในการจัดเก็บข้อมูล SQL Server จะสร้างผู้ใช้และสคีมาในฐานข้อมูลในครั้งแรกที่สมาชิกกลุ่มพยายามสร้างข้อมูล สิ่งนี้เกิดขึ้นโดยอัตโนมัติ ไม่จำเป็นต้องสร้างสคีมาและผู้ใช้ด้วยตนเอง

สำหรับคำแนะนำในการใช้เครื่องมือ SQL Server เพื่อสร้างบัญชี ผู้ใช้ และสคีมา โปรดดูเอกสารประกอบของ Microsoft SQL Server

หลังการติดตั้ง คุณจะต้องเพิ่มผู้ใช้เพื่อทำงานกับฐานข้อมูล จากนั้นจึงสร้างฐานข้อมูลใหม่ ด้านล่างเราจะบอกวิธีการทำเช่นนี้

1. การเพิ่มผู้ใช้ใหม่

เปิดตัวโปรแกรม” วันพุธ สตูดิโอการจัดการเซิร์ฟเวอร์ SQL» (« เริ่ม» — « ไมโครซอฟต์ SQL Server 2008 R2» — « สตูดิโอการจัดการเซิร์ฟเวอร์ SQL») .

ในหน้าต่างที่เปิดขึ้น ให้เลือก:

  • ประเภทเซิร์ฟเวอร์: " ส่วนประกอบกลไกฐานข้อมูล» .
  • ชื่อเซิร์ฟเวอร์ในรูปแบบ " <Имя компьютера>\<Идентификатор экземпляра> " , ที่ไหน
    <Имя компьютера>— ชื่อของคอมพิวเตอร์จริงที่ติดตั้ง SQL Server (ในตัวอย่างของฉัน “ S4»).
    <Идентификатор экземпляра>— ตั้งค่าเฉพาะเมื่อเชื่อมต่อกับอินสแตนซ์ที่มีชื่อของ SQL Server
  • การรับรองความถูกต้อง:" การรับรองความถูกต้องของเซิร์ฟเวอร์ SQL" หรือ " การรับรองความถูกต้องของ Windows»
  • เข้าสู่ระบบ: ชื่อผู้ใช้ SQL Server
  • รหัสผ่าน: ในกรณีของการรับรองความถูกต้องของ SQL Server รหัสผ่านสำหรับผู้ใช้ที่เลือก

จากนั้นคลิก “ เชื่อมต่อ» .

หากป้อนทุกอย่างถูกต้องในหน้าต่าง “ เบราว์เซอร์วัตถุ"เราจะเห็นแท็บที่มีชื่อเซิร์ฟเวอร์ SQL ของเรา ในนั้นให้เปิดแท็บ “ ความปลอดภัย» — « เข้าสู่ระบบ" และในเมนูบริบทให้เลือก " สร้างการเข้าสู่ระบบ» .

หน้าต่าง " การสร้างการเข้าสู่ระบบ". บน " เป็นเรื่องธรรมดา» กรอก:

  • เข้าสู่ระบบ: ชื่อผู้ใช้ SQL
  • เลือกการรับรองความถูกต้อง: SQL Server
  • เราสร้างรหัสผ่านสำหรับผู้ใช้

(หากจำเป็น คุณสามารถกำหนดการตั้งค่าความปลอดภัยอื่นๆ ได้) จากนั้นไปที่ “ บทบาทเซิร์ฟเวอร์» .

ในหน้านี้คุณต้องระบุสำหรับผู้ใช้รายนี้ ตัวอย่างเช่น หากคุณต้องการสร้างผู้ใช้ที่มีสิทธิ์ผู้ดูแลระบบ คุณจะต้องกำหนดบทบาทให้เขา

  • ผู้ดูแลระบบ

หากผู้ใช้ถูกสร้างขึ้นเพื่อเชื่อมต่อโปรแกรมหรือการระบุบทบาทก็เพียงพอแล้ว

  • ดีบีครีเอเตอร์
  • ผู้ดูแลระบบกระบวนการ
  • สาธารณะ

กำหนดให้กับผู้ใช้ทุกคน

หลังจากระบุบทบาทที่จำเป็นทั้งหมดสำหรับผู้ใช้ที่ถูกสร้างขึ้นแล้ว คลิก “ ตกลง» .

เสร็จสิ้นขั้นตอนการสร้างผู้ใช้

2. สร้างฐานข้อมูลใหม่

หากต้องการเพิ่มฐานข้อมูลใหม่ใน " สภาพแวดล้อม Studio จัดการเซิร์ฟเวอร์ Microsoft SQL"คลิกขวาที่ "แท็บ" ฐานข้อมูล" และเลือก " สร้างฐานข้อมูล» .

ในหน้าต่างที่เปิดขึ้น " การสร้างฐานข้อมูล" บนแท็บ " เป็นเรื่องธรรมดา» กรอก:

  • ตั้งชื่อฐานข้อมูล ชื่อฐานข้อมูลต้องไม่ขึ้นต้นด้วยตัวเลขหรือมีช่องว่างในชื่อ มิฉะนั้นเราจะได้รับข้อผิดพลาด:
    « ไวยากรณ์ไม่ถูกต้องใกล้กับโครงสร้าง %ชื่อฐานข้อมูล%"
  • เลือกผู้ใช้ที่สร้างในขั้นตอนก่อนหน้าเป็นเจ้าของ

จากนั้นไปที่ “ ตัวเลือก» .

ที่นี่คุณต้องเลือก “ รูปแบบการกู้คืน» ฐานข้อมูล และ « ระดับความเข้ากันได้". พารามิเตอร์เหล่านี้ขึ้นอยู่กับแอปพลิเคชันที่จะใช้กับฐานข้อมูลที่กำลังสร้าง เซิร์ฟเวอร์ SQL e. ตัวอย่างเช่น คุณต้องตั้งค่า

  • ระดับความเข้ากันได้: " เซิร์ฟเวอร์ SQL 2000 (80)» .

คุณควรใส่ใจกับพารามิเตอร์อย่างใกล้ชิด” รูปแบบการกู้คืน» กำลังสร้างฐานข้อมูล รายละเอียดเกี่ยวกับโมเดลการกู้คืนฐานข้อมูลและอะไร พารามิเตอร์นี้ฉันเขียนอิทธิพล หากมีข้อสงสัยให้เลือก โมเดลที่เรียบง่ายการกู้คืน.

เมื่อตัดสินใจเลือกพารามิเตอร์แล้วให้คลิก “ ตกลง» .

หลังจากนั้นเราควรเห็นฐานข้อมูลที่สร้างขึ้นใหม่ในรายการ

บทความนี้ช่วยคุณได้หรือไม่?

ในบทความสั้น ๆ นี้เราจะมาดูกัน แบบสอบถาม SQL, ซึ่งอนุญาต เพิ่มผู้ใช้ใหม่ลงในฐานข้อมูลรวมถึงเปลี่ยนพารามิเตอร์ของพารามิเตอร์ที่มีอยู่

ฉันขอยกตัวอย่างให้คุณทันที แบบสอบถาม SQL เพื่อสร้างผู้ใช้ฐานข้อมูลใหม่:

ให้สิทธิ์เลือก แทรก อัปเดต สร้าง ดำเนินการ *. * ถึง "MyUser"@"localhost" ระบุโดย "123456" พร้อมตัวเลือกการให้สิทธิ์ MAX_QUERIES_PER_HOUR 10 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 10

ทีนี้เรามาดูกันดีกว่า แบบสอบถาม SQL เพื่อเปลี่ยนผู้ใช้ที่มีอยู่:

ให้สิทธิ์เลือก แทรก อัปเดต สร้าง ดำเนินการ *. * ถึง "MyUser"@"test1.ru" ระบุด้วยรหัสผ่าน "565491d704013245" พร้อมตัวเลือกการให้สิทธิ์ MAX_QUERIES_PER_HOUR 10 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 10

อย่างที่คุณเห็น ไวยากรณ์นั้นเหมือนกับการสร้างผู้ใช้ใหม่ทุกประการ ข้อแตกต่างเพียงอย่างเดียวคือผู้ใช้ " ผู้ใช้ของฉัน"มีอยู่แล้วเท่านั้นเอง

และในที่สุดก็ การลบผู้ใช้ออกจากฐานข้อมูล. มีจุดหนึ่งที่น่าสนใจที่นี่ ความจริงก็คือข้อมูลของผู้ใช้ฐานข้อมูลนั้นถูกจัดเก็บไว้ในตารางฐานข้อมูล ดังนั้น หากต้องการลบผู้ใช้ คุณต้องลบบันทึกในตารางที่เกี่ยวข้อง นี่คือรหัส:

ลบจาก `ผู้ใช้` โดยที่แปลง (ผู้ใช้ที่ใช้ cp1251) = แปลง ("MyUser" โดยใช้ cp1251) และแปลง (โฮสต์ใช้ cp1251) = แปลง ("test1.ru" โดยใช้ cp1251)
ลบจาก `db` โดยที่แปลง (ผู้ใช้ที่ใช้ cp1251) = แปลง ("MyUser" โดยใช้ cp1251) และแปลง (โฮสต์ใช้ cp1251) = แปลง ("test1.ru" โดยใช้ cp1251)
ลบจาก `tables_priv` โดยที่ CONVERT (ผู้ใช้ที่ใช้ cp1251) = CONVERT ("MyUser" USING cp1251) และ CONVERT (โฮสต์ที่ใช้ cp1251) = CONVERT ("test1.ru" โดยใช้ cp1251)
ลบจาก `columns_priv` โดยที่ CONVERT (ผู้ใช้ที่ใช้ cp1251) = CONVERT ("MyUser" USING cp1251) และ CONVERT (โฮสต์ที่ใช้ cp1251) = CONVERT ("test1.ru" โดยใช้ cp1251)

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

สวัสดีทุกคน! ตอนนี้เราจะดูตัวอย่าง การสร้างและการลบผู้ใช้ใน Microsoft SQL Server DBMSทั้งการใช้คำสั่ง Transact-SQL และการใช้สภาพแวดล้อม Management Studio

กระบวนการสร้างผู้ใช้ใน MS SQL Server ประกอบด้วยสองขั้นตอน:

  1. การสร้างล็อกอิน SQL Server ชื่อนี้จำเป็นเพื่อให้ผู้ใช้สามารถเชื่อมต่อกับอินสแตนซ์ SQL Server;
  2. การสร้างผู้ใช้ฐานข้อมูล ในกรณีนี้ เราได้ให้สิทธิ์แก่ผู้ใช้ในออบเจ็กต์ฐานข้อมูลแล้ว

บันทึก! ตามตัวอย่าง เซิร์ฟเวอร์ SQL ของฉันจะเป็น Microsoft SQL Server 2012 Express การทดสอบฐานข้อมูลการทดสอบได้ถูกสร้างขึ้นบนเซิร์ฟเวอร์ SQL นี้

การสร้างการเข้าสู่ระบบบน MS SQL Server

ก่อนที่คุณจะเริ่มสร้างการเข้าสู่ระบบสำหรับเซิร์ฟเวอร์ SQL คุณต้องตัดสินใจเกี่ยวกับวิธีการตรวจสอบสิทธิ์ มีสองตัวเลือก:

  1. การรับรองความถูกต้องของ Windows– นี่คือเวลาที่ชื่อเข้าสู่ระบบสามารถระบุผู้ใช้เป็นบัญชีได้ รายการวินโดวส์หรือเป็นสมาชิกของกลุ่ม Windows ( รวมถึงบัญชีโดเมนและกลุ่ม);
  2. การรับรองความถูกต้องของเซิร์ฟเวอร์ SQL. ในกรณีนี้ การเข้าสู่ระบบจะมีอยู่ใน SQL Server เท่านั้น

มาดูตัวอย่างการสร้างการเข้าสู่ระบบบนเซิร์ฟเวอร์ SQL กัน เราจะทำสิ่งนี้ก่อนโดยใช้ SQL Server Management Studio จากนั้นใช้ Transact-SQL

การสร้างการเข้าสู่ระบบโดยใช้ SQL Server Management Studio

เราเปิดตัว Management Studio จากนั้นในเบราว์เซอร์วัตถุเราจะพบรายการ “ ความปลอดภัย" เปิดด้วยเครื่องหมายบวก คลิกขวาที่รายการ " เข้าสู่ระบบ" และเลือกรายการ " สร้างการเข้าสู่ระบบ».


ต่อไป เรามาสร้างการเข้าสู่ระบบทดสอบด้วยการรับรองความถูกต้องของ SQL Server กัน เราระบุชื่อเข้าสู่ระบบ สร้างรหัสผ่าน และยืนยัน นอกจากนี้เรายังสามารถตรวจสอบตัวเลือกต่างๆ ได้ เช่น การใช้นโยบายรหัสผ่าน ฐานข้อมูลเริ่มต้น ภาษาเริ่มต้น และอื่นๆ


จากนั้นคลิกที่ปุ่ม “ ตกลง" หลังจากนั้นการเข้าสู่ระบบ TestLogin จะถูกสร้างขึ้น ตามค่าเริ่มต้น การเข้าสู่ระบบนี้จะถูกเปิดใช้งานและจะมีสิทธิ์ในบทบาทเซิร์ฟเวอร์ "สาธารณะ"

การสร้างการเข้าสู่ระบบโดยใช้ Transact-SQL

หากต้องการสร้างการเข้าสู่ระบบใน Transact-SQL คุณต้องเปิดตัวแก้ไขแบบสอบถามใน Management Studio แล้วเรียกใช้ คำแนะนำต่อไปนี้ (มันทำสิ่งเดียวกันกับการกระทำของเราข้างบนนี้ทุกประการ อินเตอร์เฟซแบบกราฟิกสตูดิโอการจัดการ).

สร้างการเข้าสู่ระบบด้วยรหัสผ่าน=N"Pa$$w0rd", DEFAULT_DATABASE=, DEFAULT_LANGUAGE=[รัสเซีย], CHECK_EXPIRATION=OFF, CHECK_POLICY=ON GO

กล่าวอีกนัยหนึ่งในการสร้างการเข้าสู่ระบบในเซิร์ฟเวอร์ SQL จะใช้คำสั่ง สร้างการเข้าสู่ระบบ.

การสร้างการเข้าสู่ระบบเซิร์ฟเวอร์ SQL ด้วย Windows Authentication

เมื่อต้องการสร้างการเข้าสู่ระบบ Windows Authenticated ให้รันคำสั่ง SQL ต่อไปนี้:

สร้างการเข้าสู่ระบบจาก WINDOWS ด้วย DEFAULT_DATABASE=, DEFAULT_LANGUAGE=[Russian]; ไป

  • ComputerName\NameUser คือชื่อคอมพิวเตอร์\ชื่อผู้ใช้
  • จาก WINDOWS – ระบุว่าจะใช้การรับรองความถูกต้องของ Windows
  • ด้วย DEFAULT_DATABASE= – ฐานข้อมูลเริ่มต้น;
  • DEFAULT_LANGUAGE=[รัสเซีย] – ภาษาเริ่มต้น

ปิดการใช้งานและเปิดใช้งานการเข้าสู่ระบบใน MS SQL Server

หากจำเป็น คุณสามารถปิดการใช้งานการเข้าสู่ระบบชั่วคราวเพื่อบล็อกผู้ใช้จากการเข้าถึงเซิร์ฟเวอร์

ปิดการใช้งาน ALTER LOGIN TestLogin DISABLE; --เปิดใช้งานการเปลี่ยนแปลงการเข้าสู่ระบบ TestLogin เปิดใช้งาน;

การสร้างผู้ใช้ฐานข้อมูลใน MS SQL Server

เมื่อสร้างการเข้าสู่ระบบแล้ว คุณสามารถดำเนินการสร้างผู้ใช้ฐานข้อมูลได้ เช่น การจับคู่ผู้ใช้กับการเข้าสู่ระบบ

มาสร้างผู้ใช้ TestLogin กันด้วยสองวิธีคือ ใช้ Management Studio และภาษา T-SQL

การสร้างผู้ใช้ฐานข้อมูลโดยใช้ Management Studio

เปิด Management Studio ค้นหาฐานข้อมูลที่ต้องการในเบราว์เซอร์วัตถุแล้วเปิดด้วยเครื่องหมายบวก จากนั้นใช้เครื่องหมายบวกเพื่อเปิดรายการ “ ความปลอดภัย" และคลิกที่โฟลเดอร์ " ผู้ใช้"คลิกขวาแล้วเลือก" สร้างผู้ใช้».


จากนั้นกรอกชื่อผู้ใช้และชื่อล็อกอินที่ตรงกับผู้ใช้รายนี้ ( ในกรณีของฉันชื่อเหมือนกัน) และยังระบุรูปแบบเริ่มต้น ( หากไม่ได้ระบุไว้ ระบบจะกำหนดรูปแบบ dbo).


ให้เราสังเกตบทบาทของฐานข้อมูลทันทีด้วย ผู้ใช้รายนี้. บนหน้า" สมาชิกภาพ"ฉันทำเครื่องหมายที่ช่องถัดจากบทบาท db_datareader, เช่น. ผู้ใช้จะมีสิทธิในการอ่านข้อมูลจากตารางผู้ใช้ คลิก " ตกลง».


การสร้างผู้ใช้ฐานข้อมูลโดยใช้ Transact-SQL

คำสั่ง T-SQL ต่อไปนี้จะสร้างผู้ใช้ฐานข้อมูล ( รูปแบบเริ่มต้น dbo) และกำหนดบทบาท db_datareader ให้กับมัน เช่น ทำแบบเดียวกับที่เราทำก่อนหน้านี้เล็กน้อยในอินเทอร์เฟซกราฟิก Management Studio

ใช้การทดสอบ GO สร้างผู้ใช้เพื่อเข้าสู่ระบบด้วย DEFAULT_SCHEMA= GO ALTER ROLE เพิ่มสมาชิก ; ไป

ดังนั้นคำแนะนำ สร้างผู้ใช้ใช้เพื่อสร้างผู้ใช้ฐานข้อมูล

การลบผู้ใช้ฐานข้อมูลและการเข้าสู่ระบบใน MS SQL Server

ในการลบผู้ใช้ฐานข้อมูล คุณสามารถเขียนคำสั่ง SQL อย่างง่ายได้ เป็นต้น

เข้าสู่ระบบทดสอบผู้ใช้ DROP;

หรือใช้เครื่องมือกราฟิก Management Studio เช่น ในเบราว์เซอร์วัตถุในฐานข้อมูลที่ต้องการเลือก " ความปลอดภัย -> ผู้ใช้" และคลิกขวาที่ผู้ใช้ที่คุณต้องการลบและเลือก " ลบ».

บันทึก! ผู้ใช้ที่เป็นเจ้าของวัตถุที่กำหนดความปลอดภัยไม่สามารถเอาออกจากฐานข้อมูลได้

คุณยังสามารถใช้เครื่องมือกราฟิกของ Management Studio ( เหล่านั้น. “ความปลอดภัย -> การเข้าสู่ระบบ” คลิกขวาที่ชื่อ จากนั้นคลิกที่ “ลบ”) และคำสั่ง Transact-SQL เช่น

วางเข้าสู่ระบบ TestLogin;

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

ฉันหวังว่าเนื้อหานี้จะเป็นประโยชน์กับคุณ ลาก่อน!

ชุดของการกระทำจะคล้ายกัน)

1. การเพิ่มผู้ใช้ใหม่

มาเปิดตัวยูทิลิตี้กัน ใน ไมโครซอฟต์ วินโดวส์เซิร์ฟเวอร์ 2012 R2 สามารถพบได้ในรายการโปรแกรมทั้งหมด

ที่ไมโครซอฟต์ วินโดวส์เซิร์ฟเวอร์ 2008 R2 ใน "เมนู" เริ่ม" (เริ่ม) - " ไมโครซอฟต์ SQL เซิร์ฟเวอร์ 2012" - "วันพุธ สตูดิโอการจัดการเซิร์ฟเวอร์ SQL».

ในเบราว์เซอร์วัตถุ ให้เปิดแท็บ " ความปลอดภัย"(ความปลอดภัย) คลิกขวาที่แท็บ" เข้าสู่ระบบ"(เข้าสู่ระบบ) และในเมนูบริบทเลือก " สร้างการเข้าสู่ระบบ...» (เข้าสู่ระบบใหม่...)

หน้าต่างสำหรับสร้างชื่อเข้าสู่ระบบ (เข้าสู่ระบบ - ใหม่) จะเปิดขึ้น ตอนนี้คุณต้องตัดสินใจเกี่ยวกับตัวเลือกการรับรองความถูกต้องสำหรับผู้ใช้ใหม่ มี 2 ​​ตัวเลือก:

  • การตรวจสอบรหัสผ่าน - การตรวจสอบความถูกต้องของเซิร์ฟเวอร์ SQL
  • การเข้าถึงสำหรับผู้ใช้ Windows ที่เฉพาะเจาะจง - การรับรองความถูกต้องของ Windows

2. การรับรองความถูกต้องของเซิร์ฟเวอร์ SQL

ขั้นแรก มาดูวิธีการตรวจสอบสิทธิ์แบบแรกกัน ตัวอย่างเช่น เรามาสร้างผู้ใช้สำหรับ . ระบุชื่อเข้าสู่ระบบ เลือก “ การรับรองความถูกต้องของเซิร์ฟเวอร์ SQL"(SQL Server Authentication) และกรอกรหัสผ่านของผู้ใช้ ถัดไป ยกเลิกการเลือก/ตรวจสอบพารามิเตอร์ต่อไปนี้:

  • บังคับใช้นโยบายรหัสผ่าน
  • บังคับใช้การหมดอายุของรหัสผ่าน
  • ผู้ใช้จะต้องเปลี่ยนรหัสผ่านเมื่อเข้าสู่ระบบครั้งถัดไป

สำหรับงานนี้ เราจะปล่อยให้เปิดใช้งานเฉพาะพารามิเตอร์แรกเท่านั้น

ฉันขอแนะนำให้เลือกภาษาเริ่มต้นทันที หากคุณกำลังใช้ ฉบับภาษาอังกฤษ SQL Server จากนั้นข้อความบริการที่ SQL Server จะส่งไปยังแอปพลิเคชันที่เชื่อมต่อภายใต้ผู้ใช้รายนี้ (ในกรณีนี้คือโปรแกรม 1C:องค์กรดังนั้นไปยังผู้ใช้ปลายทางที่ทำงานในโปรแกรม) จะถูกส่งต่อไปยัง ภาษาอังกฤษ. หากเลือกภาษาเริ่มต้นสำหรับผู้ใช้ เช่น รัสเซีย ข้อความบริการจะถูกส่งเป็นภาษารัสเซีย

ตั้งค่าพารามิเตอร์ที่จำเป็นและไปที่ “ บทบาทเซิร์ฟเวอร์"(บทบาทเซิร์ฟเวอร์)

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

  • ดีบีครีเอเตอร์
  • ผู้ดูแลระบบกระบวนการ
  • สาธารณะ

จากนั้นคลิก “ ตกลง» เพื่อบันทึกการดำเนินการที่เสร็จสมบูรณ์

3. การรับรองความถูกต้องของ Windows

ตอนนี้เรามาเพิ่มผู้ดูแลระบบ SQL Server โดยเลือกจาก ผู้ใช้ปัจจุบันหน้าต่าง หากต้องการทำสิ่งนี้ ให้สร้างผู้ใช้ใหม่และระบุวิธีการตรวจสอบสิทธิ์ “ การรับรองความถูกต้องของ Windows» (การรับรองความถูกต้องของ Windows) ต่อไปเพื่อกรอกชื่อล็อกอินของคุณ คลิก “ หา"(ค้นหา...) จากนั้น " นอกจากนี้"(ขั้นสูง...) ในหน้าต่างถัดไป" ค้นหา"(ค้นหาทันที) และเลือกผู้ใช้ที่ต้องการจากรายการ ปิดหน้าต่างทั้งหมดโดยคลิกที่ " ตกลง».

ไปที่แท็บกันเถอะ " บทบาทเซิร์ฟเวอร์"(บทบาทเซิร์ฟเวอร์) และตามภารกิจเราจะระบุบทบาท:

  • สาธารณะ
  • ผู้ดูแลระบบ

คลิก " ตกลง» เพื่อบันทึกผู้ใช้ใหม่

ขณะนี้อยู่ในรายการการเข้าสู่ระบบเราสามารถเห็นผู้ใช้ที่สร้างขึ้นใหม่ได้

บทความนี้ช่วยคุณได้หรือไม่?