• 数据控制DCL


    一、数据安全性

    1.用户表示和鉴别

    2.存取控制

    3.定义视图

    4.审计

    5.数据加密

     

    二、服务器级安全:

    登入名(windows账号登入、账号密码登入)

    默认登入账号:1.BUILTINAdministrators 2.sa(管理员账号,默认禁用,需启用)

     

    创建SQLsever登入账号

    create login 登入名
    [with password=‘’
    [must_change]
    [,default_darabase=数据库名] --下次登录强制修改密码
    [,check_expiration={on|off}]--强制实施过期密码策略
    [,check_policy={on|off}]      --强制实施密码策略
    ]

    删除登入账号

    sp_droplogin  '<登入账号>'
    drop login <登入账号>

    三、数据库级安全:进入数据库,没有操作权限

    新建用户

    create user 用户名 for login 登入名

    四、权限控制

    授予权限

    grant 权限 on 对象(表、视图)  to 用户名 with grant option
    --with grant option 可使这个用户拥有给其他用户授权的权利

    回收权限

    revoke 权限 on 对象(表、视图)  from 用户名 [cascade]
    --cascade 回收直接赋予的权限

    禁止权限

    deny 权限 on 对象(表、视图)  to 用户名

    五、默认数据库用户

    dbo

    1.每个数据库都有一个dbo用户,且不能删除

    2.dbo是数据库的拥有者

    3.每个SQLsever 服务器登入账号在其创建的数据库中都映射为dbo用户

    4.sa映射为所有系统数据库的dbo用户

     

    guest

    1.每个数据库都有一个guest用户

    2.默认guest没有任何权限

    3.guest需要启用后才有效

    4.一个没有映射到数据库用户的SQL sever服务器登录账号试图访问数据库时,SQLsever将尝试通过guest用户访问

     

    六、角色管理

    角色

    固定服务器角色

     

     

    sp_addsrvrolemember ‘<登录账号>’,'服务器角色'  --添加成员
    
    sp_dropsrvrolemember ‘<登录账号>’,'服务器角色' --删除成员

     

     

    固定数据库角色

    自定义数据库角色

    sp_addrole '角色名'     --创建自定义数据库角色
    sp_addrolemember '角色','用户'      
    
    sp_droprole  ‘角色名’  --删除自定义数据库角色

     

     

  • 相关阅读:
    Android 中的code sign
    iOS 中的Certificate,Provisioning Profile 的一些注意 (不断完善中)
    xcode 和 android studio中在Mac系统下的自动对齐快捷键
    iOS block 声明时和定义时的不同格式
    iOS 和 Android 中的后台运行问题
    Android 阅读Tasks and Back Stack文章后的重点摘抄
    Android 中PendingIntent---附带解决AlarmManager重复加入问题
    Android 中获得notification的发出时间
    iOS 关于Layer的疑问
    iOS的 context 和Android 中的 canvas
  • 原文地址:https://www.cnblogs.com/yrxc/p/12955050.html
Copyright © 2020-2023  润新知