首先創建一個測試數據庫
CREATE DATABASE tmp_db
1. 創建登陸用戶 create login
CREATE login [’{KaTeX parse error: Expected 'EOF', got '}' at position 8: 要創建的用戶名}̲'] WITH passwor…密碼}’, default_database= ‘{$數據庫名}’
USE DATABASE [tmp_db]
CREATE login [readonly_tmp_db] WITH password = 'OwsdpfU4', default_database= tmp_db
登陸帳戶名爲:「readonly_tmp_db」,登陸密碼:「OwsdpfU4」,默認連接到的數據庫:「tmp_db」。 這時候,「readonly_tmp_db」 帳戶就可以連接到 SQL Server 服務器上了。但是此時還不能訪問數據庫中的對象。嚴格的說,此時readonly_tmp_db帳戶默認是guest 數據庫用戶身份,可以訪問 guest 能夠訪問的數據庫對象。
2. 創建數據庫用戶 create user
CREATE USER [’{KaTeX parse error: Expected 'EOF', got '}' at position 8: 要創建的用戶名}̲'] FOR login ['…要創建的用戶名}’] WITH default_schema = ‘{$schema}’
CREATE USER [readonly_tmp_db] FOR login [readonly_tmp_db] WITH default_schema = dbo
3. 賦予權限(所有表)
GRANT SELECT,UPDATE,INSERT,DELETE TO ‘{$用戶名}’
GRANT SELECT,UPDATE,INSERT,DELETE TO readonly_tmp_db
4. 賦予權限(指定表)
GRANT SELECT,UPDATE,INSERT,DELETE ON ‘{KaTeX parse error: Expected 'EOF', got '}' at position 3: 表名}̲' TO '{用戶名}’
GRANT SELECT,UPDATE,INSERT,DELETE ON T_DEMO TO readonly_tmp_db
5. 刪除數據庫用戶
drop user ‘{$用戶名}’
drop user readonly_tmp_db
6. 刪除登陸用戶
drop login ‘{$用戶名}’
drop login readonly_tmp_db