此时数据库管理员的密码是空
用 sp_password 过程修改管理员密码:
sp_password null,sapassword,sa,1 //新密码 sapassword,修改密码账户 sa, 1 表示立刻修改
在退出
数据库,下一次客户端连接数据库时,提示用户输入密码。
(2) 用户和授权
sybase ASE服务器提供一种严密的体系来保障数据的安全,并且使数据的保护级别达到非常精细的程度。在通常情况下,数据库服务器不是只给一个用户sa来使用,为了让数据库满足实际需求,需要在 sybase 数据库里添加账号/用户,为添加的用户分配适合的权限。这个操作分以下几步进行:
1、添加数据库
系统的注册账号。执行存储过程sp_addlogin来完成数据库注册账号的添加,如 exec sp_addlogin sery , d7#W6g , mydatabase 表示添加一个注册账号sery,密码是“d7#W6g”,登录到默认数据库为“mydatabase”。这个操作执行完毕后,将在master数据库的syslogins表中增加一行纪录。添加数据库系统注册账号属于服务器级的安全,换句话说就是这个账号只能连接数据库服务器,但没有访问用户数据库的权力。
2、添加数据库用户。执行存储过程sp_adduser将用户直接添加到数据库,添加数据库用户属于数据库级的安全,这时才可以以用户的身份访问用户数据库。这个操作执行完毕后,将在允许访问的数据库的sysusers表中添加纪录。
3、授权。能够访问数据库但并不意味可以访问其中的数据,有时需要具备单个数据库对象的相应许可,才可以选取、更改数据库所属表中的数据信息或执行一个存储过程。这是属于对象访问级的安全。授权的格式为: grant <权限列表> [on <表名> ] to <角色/用户>。这个操作执行完毕后,会向sysprotects表中添加纪录。 www.2cto.com
为了便于维护和管理数据库,最好让注册名和数据库用户名使用相同的名称。
通过下面的实例,来说明用户添加和授权:
--添加数据库系统的注册账号
use mater
go
sp_addlogin 'mbsslogin', 'mbsslogin', @defdb = 'mbss01', @deflanguage = 'us_english', @auth_mech = 'ANY'
go
--添加数据库用户
use mbss01
go
sp_adduser 'mbsslogin' , 'mbsslogin' , 'public'
go
--赋权
grant create table, create view, create procedure to mbsslogin
go
use master
go
(3) 注册用户的删除、数据库用户的删除以及授权的删除
--授权的删除
use mbss01
go
revoke create table, create view, create procedure to mbsslogin
go
--删除数据库用户
sp_dropuser 'mbsslogin'
go
--删除数据库系统的注册帐号
sp_droplogin 'mbsslogin'
go
作者 haojinghua