GUEST用户是一个允许具有有效SQL Server登录的任何人访问数据库的一个特殊用户,以GUEST帐号访问数据库的用户被认为是GUEST用户的身份并且继承GUEST帐号的
所有权限和许可。但是与 SQL Server 2000中不同,在SQL Server 2005或以上版本中GUEST已经默认存在于每个数据库中,但默认情况下,会在新数据库中禁用GUEST用户,
我们可以通过以下语句启用GUEST用户:GRANT CONNECT TO GUEST;
一旦启用GUEST用户,所有可以登录SQL Server的任何人,都可以用GUEST身份来访问数据库,并拥有GUEST用户的权限和许可。
当你决定不再想让该数据库被非数据库授权的用户以GUEST身份进行访问时,可以再次将GUEST帐号禁用。值得一提的是,GUEST用户在数据库中不能被删除,我们
只能通过以下语句禁用GUEST用户:REVOKE CONNECT FROM GUEST;
但需要注意的是,只能在 master 和 tempdb 以外的任何数据库中执行禁用GUEST帐号的操作,因为许多用户以GUEST身份访问master 和 tempdb系统数据库,但你也不用为安
全性担心,因为GUEST在master 和 tempdb数据库被限制了权限。
如果在model数据库中启用了GUEST用户,那么以后我们所有的新建的数据库,默认的情况下,就会自动启用GUEST用户。