2013-04-25 4 views
1

SQL Server Express 2012 설치에서 원격 연결을 사용하도록 설정했습니다. 이제는 서버 보안에 대해 조금 걱정합니다. 모든 사람들과의 연결을 허용하는 것이 큰 보안 구멍처럼 들리기 때문입니다.특정 사용자에 대해서만 원격 연결 허용

사용자가 내 "허용"목록에없는 사용자로 인증을 시도하는 경우 SQL Server에 연결을 해제하도록 지시 할 수 있습니까? 그렇다면 모니터링 사용자를이 목록에 추가 할 수 있으며 내 관리 계정에 액세스 할 수 있다고 걱정할 필요가 없습니다.

답변

1

db 서버를 설정하여 모든 IP 주소가 아닌 특정 IP 주소의 연결 만 허용 할 수 있어야합니다. 나는 T-SQL 문법을 확신하지 못하고 있지만, 누군가는 분명히 올바른 문법을 사용한다.

실제로 사업을 의미하는 경우, 귀하는 귀하가 제공 한 인증서를 사용하여 클라이언트를 인증하려고합니다. 이 참조하고 다양한 기사가에 대한 링크 : 모든

https://security.stackexchange.com/questions/14589/advantages-of-client-certificates-for-client-authentication

+0

AFAIK에는 이와 같은 SQL Server에 기본 제공되는 기능이 없습니다. Windows 방화벽은 아마도 그렇게 할 수는 있지만 SQLServer의 경우에는 자신 만의 롤업을해야합니다 (위험하지 않으며 미숙 한 사람이 아닌). – RBarryYoung

+0

내 자식 서버에서 직접 설정 한 경우 인증서 기반 보안은 SSL 수준에서 발생합니다.기본적으로 클라이언트가 보안 연결을 협상 할 때 서버의 인증 기관이 서명 한 인증서를 요청합니다. 클라이언트가 전달에 실패하면 서버는 연결을 완전히 거부합니다. 클라이언트가 SQL 서버 근처의 아무 곳이나 갈 수는 없으며 로그인을 시도하지 않습니다. –

+0

그럼에도 불구하고 이것은 T-SQL 구문과 관련이 없습니다. 나는 그것이 작동하지 않거나 OP가 이것을 사용할 수 없거나 사용해서는 안된다는 말은 아니다. 나는 SQL Server/T-SQL에 관한 위의 비트가 AFAIK가 올바르지 않다고 말하고있다. 나는 틀릴 수도 있지만 이런 종류의 일은 SQL Server가 아닌 도메인이나 Windows 서버에서 설정된다는 것을 알고 있습니다. – RBarryYoung

3

첫째, 이것은 DBA 사이트에 질문한다 질문은 아마입니다. 어쨌든 특정 사용자 만 로그인 할 수 있도록 서버의 보안을 설정할 수 있습니다.

서버를 설정할 때 로그인을 서버 수준에 추가 한 다음 데이터베이스 수준의 사용자를 추가합니다. 설치되어있는 사용자 만 분명히 특정 데이터베이스를 사용할 수 있습니다. 사용자를 역할에 배치 할 수 있으므로 예를 들어 데이터베이스에 대한 읽기 전용 액세스 권한이 부여됩니다. 오브젝트 레벨에 따라 누가 액세스 할 수 있는지 제어 할 수 있습니다.

어떤 SQL 서버 보안에 대한 좋은 기사가에 대한 here

때때로 후, 당신은 당신이 로그온 할 수 없습니다 특정 사용자를 허용 할 필요가 설정 보안을 가지고 있다고 말했다 가지고있다. 아마도 당신은 데이터베이스에 대한 몇 가지 주요 업그레이드를하고있을 것입니다. 이 경우에 한 가지 옵션은 로그온 트리거를 만드는 것입니다.

로그온 트리거는 사용자가 로그인 할 때마다 실행됩니다. "허용 된"사용자의 테이블을 만들 수 있으며, 트리거에서 ROLLBACK 테이블에없는 경우 효과적으로 로그온을 금지 할 수 있습니다.

Here는 로그온

+0

로그온 트리거는 까다 롭고 위험합니다. 숙련 된 SQL Server DBA 만 시도해야합니다. DAC가 무엇인지, 어떻게 사용하는지 모르는 사람은 로그인 트리거를 시도해서는 안됩니다. – RBarryYoung

+0

내가 분명히하자 : 나는 그 밖의 모든 것에 동의한다. 나는 초보자에게는 로그인 트리거를 권장하지 않는다. – RBarryYoung

+0

나는 @RBarryYoung에 동의한다. –

1

그들이 그것을에 로그인 할 수 있다는 것을 의미하지 않는 SQL Server 인스턴스에 원격으로 연결할 수 있다는 트리거 작성에 대한 정보입니다. 권한이 제대로 부여되지 않은 경우에도 SQL Server 로그인 인증 순서에 따라 시작해야합니다.

이것은 "신뢰할 수있는 로그인"(Windows 로그인/도메인 계정에서 권한이 부여되는)에 대해서는 침묵/보이지 않지만 여전히 발생합니다.

서버의 "보안"폴더 (SSMS)를 보면 SQL Server에 대한 인증 된 로그인 목록이 표시됩니다. 이러한 항목을 추가하거나 제거하면 SQL Server에서 실제로 누가 세션을 만들 수 있는지 제어 할 수 있습니다.

관련 문제