programing tip

SQL Server의 데이터베이스에있는 테이블에 대한 읽기 및 쓰기 권한을 부여하려면 T-SQL이란 무엇입니까?

itbloger 2020. 11. 15. 10:58
반응형

SQL Server의 데이터베이스에있는 테이블에 대한 읽기 및 쓰기 권한을 부여하려면 T-SQL이란 무엇입니까?


SQL Server에서 사용자 에게 할당 할 정확한 SQL db_datareaderdb_datawriter역할 은 무엇입니까 ?

사용자 이름은 MYUSER이고 데이터베이스는 MYDB입니다.


SQL Server 2012, 2014 :

USE mydb
GO

ALTER ROLE db_datareader ADD MEMBER MYUSER
GO
ALTER ROLE db_datawriter ADD MEMBER MYUSER
GO

SQL Server 2008에서 :

use mydb
go

exec sp_addrolemember db_datareader, MYUSER 
go
exec sp_addrolemember db_datawriter, MYUSER 
go

데이터베이스에 대한 모든 저장 프로 시저를 실행하는 기능도 할당하려면 :

GRANT EXECUTE TO MYUSER;

특정 저장 프로 시저를 실행하는 기능을 할당하려면

GRANT EXECUTE ON dbo.sp_mystoredprocedure TO MYUSER;

SQLServer 2012에서보다 우아한 역할 변경 :

use mydb
go

ALTER ROLE db_datareader
  ADD MEMBER MYUSER 
go
ALTER ROLE db_datawriter
  ADD MEMBER MYUSER 
go

새 역할을 만든 다음이 역할에 실행, 선택 등 권한을 부여하고 마지막으로 사용자를이 역할에 할당하는 것이 좋습니다.

역할 만들기

CREATE ROLE [db_SomeExecutor] 
GO

이 역할에 권한 부여

GRANT EXECUTE TO db_SomeExecutor
GRANT INSERT  TO db_SomeExecutor

사용자 추가 데이터베이스> 보안>> 역할> 데이터베이스 역할> 속성> 추가 (오른쪽 하단)에서 AD 사용자를 검색하고 추가 할 수 있습니다.

또는

   EXEC sp_addrolemember 'db_SomeExecutor', 'domainName\UserName'

게시물을 참조하십시오

참고 URL : https://stackoverflow.com/questions/456346/what-is-the-t-sql-to-grant-read-and-write-access-to-tables-in-a-database-in-sql

반응형