• SQL Server的权限模型


      创建登录名

    USE [master]
    GO
    /* For security reasons the login is created disabled and with a random password. */
    /****** Object:  Login [lee]    Script Date: 2020/1/1 21:43:33 ******/
    CREATE LOGIN login1 WITH 
    PASSWORD=N'login1',--密码
    DEFAULT_DATABASE=[TestDb],--默认登录数据库 
    DEFAULT_LANGUAGE=[简体中文],
    CHECK_POLICY=ON
    GO

    此时如果直接用此登录名登录,则会报错;原因是没有与数据库【TestDb】中的任何用户建立映射关系。

    USE [TestDb]
    GO
    
    /****** Object:  User [User1]    Script Date: 2020/1/1 21:58:13 ******/
    CREATE USER [User1] FOR LOGIN [login1] --与登录名建立映射关系
    WITH DEFAULT_SCHEMA=[schema1]--设置用户的Schema
    GO

    再次登录则可以登录成功TestDb,此时没有任何权限,什么也看不到。

     执行以下代码进行授权

    USE [TestDb]
    GO
    --创建schema,将其所有者设置为用户user1
    CREATE SCHEMA [schema1] AUTHORIZATION user1
    --创建角色
    CREATE ROLE [role1]
    --设置角色权限
    grant create table,create procedure,create view to [role1] 
    --将用户User1添加到role1角色中 
     exec sp_addrolemember 'role1','User1 ' 

    SQL Server
  • 相关阅读:
    Volatile变量学习
    又买了书
    java基础之类加载过程
    利用注解和POI导入Excel
    java异常简述
    Dubbo问题集
    day30 操作系统介绍 进程的创建
    day29 socketsever ftp功能简单讲解
    day28 黏包及黏包解决方案
    day27 网络通信协议 tcp/udp区别
  • 原文地址:https://www.cnblogs.com/zlgan/p/12130836.html
Copyright © 2020-2023  润新知