MS-SQL Linked Server 사용자 매핑 설정하는 방법 ( 접속자별 권한 설정 )
개요
사용자 매핑을 사용하지 않고 단순 원격서버에 대한 로그인정보로 Linked Server를 연결하여 보안 셋팅 없이 경우 모든 사용자가 Linked Server에 대한 권한을 동일하게 갖게 되므로 보안 이슈가 발생할 수 있다.
▼ 흔히 인터넷상에서 알려주는 Linked Server 연결 방법.
문제점 확인 및 문제 발생 상황
위와 같은 방법으로 Linked Server를 설정 할 경우 모든 사용자가 같은 계정으로 원격 서버에 접속하기 때문에 여러 권한 관련 보안 이슈가 발생할 수 있게 된다.
DBA가 없는 규모가 작거나 사수가 없는 경우 혹은 별도 교육을 통하지 않는 경우 사실상 세부 옵션을 알아서 사용하기가 어렵기 때문에 위의 방법으로 연결해서 사용하던 때가 있었으나 외부에 뷰테이블 형태로 제공되는 서비스가 생기면서 해당 이슈가 발생되었다.
Linked Server 권한 문제 해결방법
해결방법은 이미 위에 옵션 화면에 노출되어있는데
로컬 서버 로그인과 원격 서버 로그인 매핑 옵션을 이용해야한다.
이말은 SQL Server에 로그인된 사용자 별로 Linked Server 연결 아이디를 다르게 하고 매핑에 등록되지 않은 사용자의 경우 아래에 옵션에 해당하는 연결을 한다는 의미이다.
- 연결안함.
- 보안컨텍스트 없이 연결
- 로그인의 현재 보안 컨텍스트를 사용하여 연결
- 다음 보안 컨텍스트를 사용하여 연결
로컬 로그인 사용자를 선택하고 원격 사용자와 암호를 입력한다.
로컬 로그인의 경우 등록된 계정을 사용하기 때문에 콤보박스에서 선택하면 됨.
입력된 결과이며 여러개 중복 등록이 가능하므로 사용자 별로 Linked Server 의 접속 계정을 설정하여 권한 및 보안 설정이 가능하다.
그리고 그외의 접속에 대해서는 연결을 하지 않거나 하는 등의 설정이 아래 옵션에서 처리가 가능하니 참고.
상세한 내용은 아래 링크를..
https://docs.microsoft.com/ko-kr/previous-versions/sql/sql-server-2008-r2/ms188477(v%3dsql.105)