Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server 2008:как да дам привилегии на потребителско име?

Ако искате да дадете на потребителя си всички разрешения за четене, можете да използвате:

EXEC sp_addrolemember N'db_datareader', N'your-user-name'

Това добавя db_datareader по подразбиране роля (разрешение за четене на всички таблици) на този потребител.

Има и db_datawriter роля - която дава на вашия потребител всички разрешения за ПИСАНЕ (INSERT, UPDATE, DELETE) на всички таблици:

EXEC sp_addrolemember N'db_datawriter', N'your-user-name'

Ако трябва да сте по-подробни, можете да използвате GRANT команда:

GRANT SELECT, INSERT, UPDATE ON dbo.YourTable TO YourUserName
GRANT SELECT, INSERT ON dbo.YourTable2 TO YourUserName
GRANT SELECT, DELETE ON dbo.YourTable3 TO YourUserName

и така нататък - можете да давате подробно разрешение за SELECT, INSERT, UPDATE, DELETE на конкретни таблици.

Всичко това е много добре документирано в MSDN Books Online за SQL Server.

И да, можете да го направите и графично - в SSMS отидете на вашата база данни, след това Security > Users , щракнете с десния бутон върху потребителя, на когото искате да дадете разрешения, след това Properties adn в долната част виждате „Членство на роля в база данни“, където можете да добавите потребителя към ролите на db.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Има ли SQL Server Profiler за SQL Server Express?

  2. Преобразуване на ‘time’ в ‘datetimeoffset’ в SQL Server (T-SQL примери)

  3. Как мога да конвертирам bigint (UNIX timestamp) в datetime в SQL Server?

  4. Не можа да се намери съхранена процедура 'dbo.aspnet_CheckSchemaVersion'

  5. Как да добавите AM/PM към времева стойност в SQL Server (T-SQL)