2013-08-30 5 views
2

중앙 데이터 저장소에 연결된 서버 연결이있는 SQL Server 2005 인스턴스가 있습니다. 보안 팀은 웹 페이지에서 사용하는 계정이 연결된 서버에 직접 액세스하지 못하도록하는 것을 선호하지만 링크 된 서버 연결에서 두 개의 데이터 열을 가져와야합니다. 이 두 가지 데이터는 보안에 문제가 없지만 나머지는 웹에서 사용할 수 없기를 바랍니다.연결된 서버를 보호하기 위해보기를 사용할 수 있습니까?

내 질문은 : 소스 링크 된 서버에 대한 권한이 부족한 계정에서 실행할 수있는 두 가지 데이터를 가져 와서 가져올 수있는보기를 만들 수 있습니까?

미리 감사드립니다.

EDIT : 아래 RBarryYoung의 답변에 따라 다른 경로가 표시되어 Execute As (http://technet.microsoft.com/en-us/library/ms188354.aspx)를 발견했습니다. 이렇게하면 웹 페이지 계정에 의해 실행 가능한 "인터페이스"저장 프로 시저를 만들 수있게되어 연결된 서버에 대한 권한을 가진 계정으로 실행하려는 저장된 proc을 실행할 수 있습니다. 모두에게 다시 한 번 감사드립니다!

+0

'Execute As'는 임시 액세스 권한을 사용자/세션에 추가하는 표준 방법입니다. 하지만 그들은 오프 노드/오프 서버로 이동하므로 링크 된 서버와 함께 작동하지 않을 수도 있습니다. SQL Server는 링크 된 서버 액세스를 세션의 'Original_Login'값으로 제한 할 수 있습니다 (미안하지만 이전에 해본 적이 있지만 연결된 서버의 특성을 기억할 수는 없습니다). – RBarryYoung

+0

머리를 주셔서 감사합니다! 이 이론을 테스트 할 수 있다면 업데이트 할 것입니다. 다시 한 번 감사드립니다! –

답변

0

아니요, AFAIK는 View를 통해 발생할 수있는 유일한 보안 설정이며 링크 된 서버를 통해 작동하지 않습니다.

은 뷰보다 보안 옵션이 많기 때문에 저장 프로 시저를 사용하여이 작업을 수행합니다.

+0

내가 틀릴 수도 있지만 정의가 아닙니다. 사용자가 액세스를 거부당하는 데이터의 하위 집합에 대한 읽기/쓰기 액세스를 허용하도록보기를 정의 할 수 있습니다. – Sonam

+0

@Sonam 아니요, 정의에 따라보기는 쿼리 표현식의 캡슐화입니다. 임 플리 멘 테이션이 특정의 것 인 경우와 벤더에 의해 추가되는 것 같은 시큐리티 기능. SQL Server에서는보기에서 사용할 수있는 유일한 보안 액세스 권한이 소유자 체인입니다. 내가 아는 뷰를 통해 향상된 액세스를 지정하는 다른 메커니즘/구문은 없습니다. 지정 방법을 알고 있다면 알려주십시오. – RBarryYoung

+0

자, 자세한 설명을 주셔서 감사합니다. – Sonam

관련 문제