OS환경 : Windows Server 2012 R2 Standard (64bit)
DB 환경 : SQL Server 2012
방법 : SQL Server 2012 readonly(읽기전용 유저 생성)
sa 유저로 SQL Server Management Studio 접속

새 쿼리 선택

샘플 테이블 생성
|
1
2
3
4
5
6
7
|
BEGIN TRANSACTION
CREATE TABLE dbo.imsi
(
cola int NULL,
colb int NULL
) ON [PRIMARY]
COMMIT;
|

샘플 테이블에 데이터 삽입
|
1
2
3
|
BEGIN TRANSACTION
insert into dbo.imsi (cola, colb) values (1,2);
COMMIT;
|

정상적으로 삽입됨
테이블 조회
|
1
|
select * from dbo.imsi;
|

1,2 가 나옴
readonly 계정 생성
보안 - 로그인 - 새 로그인 선택

로그인 이름, 패스워드 입력, 암호 정책 강제적용 해제 후 서버 역할 선택

서버 역할에서 public 만 선택 후 사용자 매핑 선택

매핑할 데이터베이스 선택 후 멤버 자격에서 db_datareader 과 public 선택 후 확인

보안 - 로그인에 새로운 로그인이 만들어짐

데이터베이스 - 보안 - 사용자에도 새로운 사용자가 생성됨

파일 - 개체 탐색기 연결 선택

새로 만든 readonly 계정으로 접속

readonly 계정으로 접속됨, 기존 쿼리창 종료

readonly 계정에서 우클릭 - 새 쿼리 선택

테이블 조회 테스트
|
1
|
select * from dbo.imsi;
|

정상적으로 조회됨
샘플 데이터 삽입 테스트
|
1
2
3
|
BEGIN TRANSACTION
insert into dbo.imsi (cola, colb) values (1,2);
COMMIT;
|

insert 권한이 거부되었다고 나오면서 삽입이 되지 않음
참조 : jasmintime.com/264