v7-用户管理示例

本文详细介绍了如何在SQLServer中创建、修改和查询用户的各种权限设置,包括超级用户、数据库权限、有效期、登录限制等,以及使用系统表和视图获取用户信息的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如下是几个示例:
创建一个系统的超级用户 super_user,他具有所有权限
CREATE USER super_user WITH SUPERUSER;

创建一个可以建立数据库的用户 dbcreator
CREATE USER dbcreator CREATEDB;

新建一用户 new_user,密码为 pass,账户的有效期为2008-12-31
CREATE USER new_user WITH PASSWORD 'pass' VALID UNTIL '2008-12-31';

新建一个本地操作系统用户
CREATE USER "HOST-NAME\USERNAME" IDENTIFIED EXTERNALLY;

新建一个域操作系统用户
CREATE USER "DOMAIN-NAME\USERNAME" IDENTIFIED EXTERNALLY;

新建一个用户有效期到2015-01-01的用户
CREATE USER new_user WITH VALID UNTIL '2015-01-01';

新建一个密码有效期到2015-01-01的用户
CREATE USER new_user WITH PASSWORD 'AA' PASSWORD EXPIRE '2015-01-01';

新建一个可以在周一、周三、周四、周五登录的用户
CREATE USER new_user WITH CONNECT INTERVAL '1,3-5';

新建一个最大连接时间为2小时的用户
CREATE USER new_user WITH CONNECT DURATION 120;

新建一个最大空闲时间为2小时的用户
CREATE USER new_user WITH CONNECT IDLE TIME 120;

新建一个最大并发连接数为5的用户
CREATE USER new_user WITH CONNECTION LIMIT 5;

新建一个只允许在‘192.168.4.10’登录的用户
CREATE USER new_user WITH IP LIMIT '192.168.4.10';

修改用户账户
用户 DAVID 将自身口令修改为'r00t'。
ALTER USER david WITH PASSWORD 'r00t';

修改用户 user1 的系统权限,使 user1 能够创建数据库。
ALTER USER user1 WITH CREATEDB;

修改用户 user1 的默认角色为 role1。
ALTER USER user1 WITH DEFAULT ROLE role1;

取消用户 user1 的默认角色。
ALTER USER user1 WITH DEFAULT ROLE NONE;

修改用户 user1 的用户名为 user2;
ALTER USER user1 RENAME TO user2;

修改用户 new_user 的用户有效期到2015-01-01
ALTER USER new_user WITH VALID UNTIL '2015-01-01';

修改用户 new_user 的密码有效期到2015-01-01
ALTER USER new_user WITH PASSWORD EXPIRE '2015-01-01';

修改用户 new_user 的登录时间为周一、周三、周四、周五
ALTER USER new_user WITH CONNECT INTERVAL '1,3-5';

修改用户 new_user 的最大连接时间为2小时
ALTER USER new_user WITH CONNECT DURATION 120;

修改用户 new_user 最大空闲时间为2小时
ALTER USER new_user WITH CONNECT IDLE TIME 120;

修改用户 new_user 最大并发连接数为5
ALTER USER new_user WITH CONNECTION LIMIT 5;

修改用户 new_user 允许其在IP地址为‘192.168.4.10’的机器上登录
ALTER USER new_user WITH IP LIMIT '192.168.4.10';

通过系统表SYS_AUTHID查询用户信息:
SELECT * FROM SYS_AUTHID WHERE ROLNAME LIKE 'US%';

通过系统视图SYS_SHADOW或者SYS_USER查询用户信息: 
SELECT * FROM SYS_SHADOW WHERE USENAME LIKE 'US%';
SELECT * FROM SYS_USER WHERE USENAME LIKE 'US%';

查询当前用户信息
SELECT CURRENT_USER; 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值