SQL Server 2008 Express Grant User Permission

做~自己de王妃 提交于 2019-12-03 09:45:41

问题


What is the appropriate SQL commands (not through the GUI) to add a windows user account to permissions on a SQL Server 2008 Database? ie.. I want to give someone read access and another person read/write..


回答1:


It's a two-step process:

  • first, you need to create a login for that user, based on its Windows credentials

    CREATE LOGIN [<domainName>\<loginName>] FROM WINDOWS
    

    This sets up the basic permission to even connect to your SQL Server

  • once you have a login, you can create a user in each database where you want to give that login rights to do something:

    CREATE USER Johnnie FOR LOGIN Domain\Johnnie;
    
  • to grant read permissions on every table in your database, assign the db_datareader role to that user

    sp_addrolemember @rolename = 'db_datareader', @membername = 'Johnnie'
    
  • to grant read and write permissions on every table in your database, assign both the db_datareader as well as the db_datawriter role to that user

  • if you need more fine grained control over what tables can be read from or written to, you need to manage permissions manually, e.g. by creating your own database roles and assigning grants to those roles, and then adding your users to those app-specific roles you created



来源:https://stackoverflow.com/questions/2725966/sql-server-2008-express-grant-user-permission

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!