SQL?Server創(chuàng)建用戶并授權的詳細步驟記錄
前言
創(chuàng)建用戶前需要有一個數據庫,創(chuàng)建數據庫命令如下:
CREATE DATABASE [數據庫名稱];
CREATE DATABASE database1;
一、創(chuàng)建登錄用戶
方式1:SQL命令
命令格式:CREATE LOGIN [用戶名] WITH PASSWORD = '密碼';
例如,創(chuàng)建登錄用戶名sa1,密碼123456 的用戶,命令如下:
CREATE LOGIN [sa1] WITH PASSWORD = '123456'
方式2:使用SSMS創(chuàng)建
選擇管理員賬戶--【安全性】--【登錄名】--右鍵--【新建登錄名】
二、數據庫中創(chuàng)建用戶
方式1:SQL命令
命令格式:USE [數據庫名稱];
CREATE USER [用戶名] FOR LOGIN [用戶名];
例如,在數據庫BLSH中創(chuàng)建用戶sa1,命令如下:
USE BLSH CREATE USER sa1
方式2:使用SSMS創(chuàng)建
選擇要創(chuàng)建用戶的數據庫--【安全性】--【用戶】--右鍵--【新建用戶】
例如,在數據庫test中創(chuàng)建用戶sa1,操作如下:
三、給用戶授權
方式1:SQL命令
使用 GRANT 命令來授予相應的權限,使用REVOKE命令來撤銷相應的權限
授權對表的 SELECT, INSERT, UPDATE 和 DELETE 權限格式:
USE [數據庫名稱];
GRANT [權限] ON [表名] TO [用戶名];
-- 授權對表的 SELECT, INSERT, UPDATE 和 DELETE 權限 GRANT SELECT, INSERT, UPDATE, DELETE ON dt_users TO sa1; -- 對存儲過程授予執(zhí)行權限 GRANT EXECUTE ON YourStoredProcedure TO sa1; -- 撤銷對表的 SELECT, INSERT, UPDATE 和 DELETE 權限 REVOKE SELECT, INSERT, UPDATE, DELETE ON dt_users FROM sa1; -- 撤銷對存儲過程的執(zhí)行權限 REVOKE EXECUTE ON YourStoredProcedure FROM sa1; -- 撤銷創(chuàng)建表的權限 REVOKE CREATE TABLE FROM sa1; -- 撤銷創(chuàng)建視圖的權限 REVOKE CREATE VIEW FROM sa1; -- 撤銷連接數據庫的權限 REVOKE CONNECT FROM sa1; -- 查詢用戶當前權限 SELECT * FROM sys.database_permissions WHERE grantee_principal_id = USER_ID('sa1');
方式2:使用SSMS創(chuàng)建
* 對整個數據庫授權
選擇管理員用戶--【安全性】--【登錄名】--在要授權的登錄名上右鍵--【屬性】
例如,給sa1賬戶授予test數據庫所有用戶表的查詢權限,操作如下:
注:public為可以連接該數據庫,db_datareader為可以讀取該數據庫的數據,其他數據庫角色含義請點擊查看數據庫角色含義
* 對數據庫表單獨授權
選擇要授權的數據庫--【安全性】--【用戶】--在要授權的用戶上右鍵--【屬性】
例如,給sa1_1用戶授予test數據庫CRM_Shops表的查詢權限,操作如下:
查詢表時出現以下提示表示沒有查詢權限:
操作數據庫時出現以下提示表示沒有給該用戶開通此數據庫的任何權限:
總結
到此這篇關于SQL Server創(chuàng)建用戶并授權的文章就介紹到這了,更多相關SQLServer創(chuàng)建用戶授權內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
SQLSERVER 的 truncate 和 delete 區(qū)別解析
在面試中我相信有很多朋友會被問到 truncate 和 delete 有什么區(qū)別,接下來通過本文給大家普及下SQLSERVER 的 truncate 和 delete 有區(qū)別,需要的朋友可以參考下2023-02-02過程需要參數 ''@statement'' 為 ''ntext/nchar/nvarchar'' 類型
過程需要參數2009-04-04