SQL Server 보안 설정

새 설치: 2006년 12월 12일

SQL Server 보안 설정 작업은 플랫폼과 네트워크, 보안 주체와 보안 개체 및 데이터베이스에 액세스하는 응용 프로그램의 세 영역으로 구성됩니다. 다음 항목에서는 효과적인 보안 계획을 만들고 구현하는 방법을 설명합니다.

SQL Server 보안에 대한 자세한 내용 및 최상의 방법 안내와 보안 검사 목록은 SQL Server 웹 사이트를 참조하십시오. 이 사이트에는 최신 서비스 팩 정보 및 다운로드도 포함되어 있습니다.

플랫폼 및 네트워크 보안

SQL Server에 대한 플랫폼에는 클라이언트를 데이터베이스 서버에 연결하는 물리적 하드웨어 및 네트워킹 시스템뿐만 아니라 데이터베이스 요청을 처리하는 데 사용되는 이진 파일이 포함되어 있습니다.

물리적 보안

최상의 물리적 보안 방법은 물리적 서버 및 하드웨어 구성 요소에 대한 접근을 엄격하게 제한하는 것입니다. 예를 들어 데이터베이스 서버 하드웨어 및 네트워킹 장치가 있는 방에는 자물쇠를 달고 접근을 제한합니다. 또한 별도의 안전한 장소에 백업 미디어를 보관하여 접근을 제한합니다.

물리적 네트워크 보안의 구현은 권한이 없는 사용자가 네트워크에 접근하지 못하게 방지하는 것으로부터 시작됩니다. 다음 차트에서는 네트워킹 보안에 대한 자세한 정보를 제공합니다.

내용 참조 항목

네트워킹 및 SQL Server

네트워크 프로토콜 및 TDS 끝점

SQL Server에 사용되는 포트 지정 및 제한

서버 네트워크 프로토콜 및 네트워크 라이브러리 구성

SQL Server에 대한 네트워크 액세스 제한

네트워크 액세스 제한

SQL Server 2005 Compact Edition 및 다른 SQL Server 버전에 대한 네트워크 액세스

SQL Server 2005 Compact Edition 온라인 설명서의 "서버 환경 구성 및 보안 설정"

백업 및 복원 전략

백업 및 복원에 대한 보안 고려 사항.

운영 체제 보안

운영 체제 서비스 팩 및 업그레이드에는 중요한 보안 향상 기능이 포함되어 있습니다. 모든 패치와 업그레이드를 데이터베이스 응용 프로그램을 사용하여 테스트한 후 운영 체제에 적용합니다.

방화벽을 사용하는 것도 효과적인 보안 구현 방법입니다. 논리적으로 방화벽은 네트워크 트래픽을 분리 또는 제한하므로 방화벽을 구성하여 조직의 데이터 보안 정책을 강화할 수 있습니다. 방화벽을 사용하면 보안 조치를 중점적으로 취할 수 있는 검사점이 제공되어 운영 체제 수준의 보안이 향상됩니다. 다음 표에서는 SQL Server의 방화벽 사용에 대한 자세한 정보를 제공합니다.

내용 참조 항목

SQL Server에서 사용할 방화벽 구성

방법: SQL Server 액세스를 허용하도록 방화벽 구성

Integration Services에서 사용할 방화벽 구성

Integration Services 액세스에 대한 Windows 방화벽 구성

Analysis Services에서 사용할 방화벽 구성

방법: Analysis Services 액세스를 허용하도록 Windows 방화벽 구성

Reporting Services에서 사용할 방화벽 구성

서버 배포 검사 목록

SQL Server에 대한 액세스를 허용하도록 방화벽의 특정 포트 열기

방화벽에서 포트 열기

노출 영역 축소는 사용하지 않는 구성 요소를 중지하거나 비활성화하는 보안 조치입니다. 노출 영역 축소는 시스템에 대한 공격 가능성을 낮춤으로써 보안을 향상시킵니다. SQL Server의 노출 영역을 제한할 때의 핵심은 서비스와 사용자에게 적절한 권한만 부여하여 "최소한의 권한"으로 필요한 서비스를 실행하는 것입니다. 다음 차트에서는 서비스 및 시스템 액세스에 대한 자세한 정보를 제공합니다.

내용 참조 항목

SQL Server에 필요한 서비스

Windows 서비스 계정 설정

서버 로그온 액세스 제한

대화형 로그온 액세스 제한

로컬 관리 권한

로컬 관리 권한 부여

SQL Server 시스템에서 인터넷 정보 서비스(IIS)를 사용하는 경우 플랫폼의 노출 영역에 대한 보안을 설정하려면 추가 단계를 수행해야 합니다. 다음 차트에서는 SQL Server 및 인터넷 정보 서비스에 대한 자세한 정보를 제공합니다.

내용 참조 항목

SQL Server 2005 Compact Edition에서의 IIS 보안

SQL Server 2005 Compact Edition 온라인 설명서의 "IIS 보안"

SQL Server 및 IIS에서 XML 서비스 사용

네이티브 XML 웹 서비스 사용을 위한 최선의 구현 방법

보고서 서버 및 인터넷 액세스

인터넷 액세스를 위한 보고서 서버 구성

보고서 서버에서 폼 보안 설정

보안 확장 프로그램 예제

Reporting Services 인증

Authentication in Reporting Services

SQL Server 2005 Compact Edition 및 IIS 액세스

SQL Server 2005 Compact Edition 온라인 설명서의 "인터넷 정보 서비스 보안 순서도"

SQL Server 운영 체제 파일 보안

SQL Server는 작업 및 데이터 저장을 위해 운영 체제 파일을 사용합니다. 최상의 파일 보안 방법은 이러한 파일에 대한 액세스를 제한하는 것입니다. 다음 차트에서는 이러한 파일에 대한 자세한 정보를 제공합니다.

내용 참조 항목

SQL Server 프로그램 파일

SQL Server 2005의 기본 인스턴스 및 명명된 인스턴스의 파일 위치

데이터베이스 파일 보안

데이터 및 로그 파일 보안

Notification Services 파일 보안

파일 및 폴더 보안 설정

Analysis Services 파일 보안

프로그램 파일, 공통 구성 요소 및 데이터 파일 보안 설정

SQL Server 서비스 팩 및 업그레이드는 향상된 보안 기능을 제공합니다. SQL Server에 사용할 수 있는 최신 서비스 팩을 확인하려면 SQL Server 웹 사이트를 참조하십시오.

다음 스크립트를 사용하여 시스템에 설치된 서비스 팩을 확인할 수 있습니다.

SELECT CONVERT(char(20), SERVERPROPERTY('productlevel'));
GO

보안 주체 및 데이터베이스 개체 보안

보안 주체는 SQL Server에 대한 액세스 권한을 부여 받은 개인, 그룹 및 프로세스입니다. 보안 개체는 서버, 데이터베이스 및 데이터베이스에 포함된 개체입니다. SQL Server 노출 영역이 더 축소되도록 각 보안 개체의 사용 권한 집합을 구성할 수 있습니다. 다음 차트에서는 보안 주체 및 보안 개체에 대한 자세한 정보를 제공합니다.

내용 참조 항목

서버와 데이터베이스 사용자, 역할 및 프로세스

보안 주체

서버 및 데이터베이스 개체 보안

보안 개체

SQL Server 보안 계층

사용 권한 계층

데이터베이스 및 응용 프로그램 보안에 대한 자세한 내용은 데이터베이스 및 데이터베이스 응용 프로그램에 대한 보안 고려 사항을 참조하십시오.

암호화 및 인증서

암호화를 통해 액세스 제어 문제를 해결할 수는 없습니다. 그러나 암호화를 사용하면 드물게 발생하긴 하지만 액세스 제어가 무시되는 경우에도 데이터 손실을 제한하여 보안이 향상됩니다. 예를 들어 데이터베이스 호스트 컴퓨터가 잘못 구성되어 해커가 신용 카드 번호와 같은 중요한 데이터를 얻는 경우 해당 정보가 암호화되어 있으면 해킹한 정보를 사용할 수 없습니다. 다음 차트에서는 SQL Server의 암호화에 대한 자세한 정보를 제공합니다.

내용 참조 항목

SQL Server의 암호화 계층

암호화 계층

SQL Server 연결 암호화

SQL Server 연결 암호화

안전한 연결 구현

방법: 데이터베이스 엔진에 암호화 연결 사용(SQL Server 구성 관리자)

암호화 함수

암호화 함수(Transact-SQL)

암호화 구현

암호화 방법 도움말 항목

Analysis Services의 데이터 암호화 설정

데이터 암호화 요구

인증서는 강력한 인증을 통해 안전한 통신을 수행할 수 있도록 두 서버 간에 공유되는 소프트웨어 "키"입니다. SQL Server에서 인증서를 만들고 사용하여 개체 및 연결 보안을 향상시킬 수 있습니다. 다음 차트에서는 SQL Server의 인증서 사용에 대한 자세한 정보를 제공합니다.

내용 참조 항목

안전한 연결을 위한 인증서 사용

SSL에 사용되는 인증서 구성

SQL Server에서 사용할 인증서 만들기

CREATE CERTIFICATE(Transact-SQL)

SQL Server Service Broker에서 인증서 사용

인증서 및 Service Broker

데이터베이스 미러링에 인증서 사용

데이터베이스 미러링에 대한 인증서 사용

응용 프로그램 보안

최상의 SQL Server 보안 방법에는 보안 클라이언트 응용 프로그램 작성이 포함됩니다. 서버 액세스 및 SQL Server 클라이언트 응용 프로그램에 대한 자세한 내용은 SQL Server Programming Overview를 참조하십시오.

네트워킹 계층에서 클라이언트 응용 프로그램의 보안을 설정하는 방법은 클라이언트 네트워크 구성을 참조하십시오.

네이티브 XML 서비스를 사용하는 응용 프로그램을 작성하는 방법은 클라이언트 응용 프로그램 작성을 참조하십시오.

SQL Server 보안 도구, 유틸리티, 뷰 및 함수

SQL Server는 보안을 구성하고 관리하는 데 사용할 수 있는 도구, 유틸리티, 뷰 및 함수를 제공합니다.

SQL Server 보안 도구 및 유틸리티

다음 차트에서는 보안을 구성하고 관리하는 데 사용할 수 있는 SQL Server 도구 및 유틸리티에 대한 자세한 정보를 제공합니다.

내용 참조 항목

SQL Server 연결, 구성 및 제어

SQL Server Management Studio 소개

SQL Server 연결 및 명령 프롬프트에서 쿼리 실행

sqlcmd 유틸리티

SQL Server에 대한 네트워크 구성 및 제어

SQL Server 구성 관리자

기능 및 연결 옵션 구성

SQL Server 노출 영역 구성

명령 프롬프트에서 기능 및 연결 옵션 구성

sac 유틸리티

보고서 서버에 대한 대칭 키 조작

rskeymgmt 유틸리티

SQL Server 보안 카탈로그 뷰 및 함수

데이터베이스 엔진은 성능과 유틸리티에 맞게 최적화된 다양한 뷰 및 함수를 통해 보안 정보를 표시합니다. 다음 차트에서는 보안 뷰 및 함수에 대한 자세한 정보를 제공합니다.

내용 참조 항목

데이터베이스 수준 및 서버 수준의 사용 권한, 보안 주체, 역할 등에 대한 정보를 반환하는 SQL Server 보안 카탈로그 뷰. 암호화 키, 인증서 및 자격 증명에 대한 정보를 제공하는 카탈로그 뷰도 있습니다.

보안 카탈로그 뷰(Transact-SQL)

현재 사용자, 사용 권한, 스키마 등에 대한 정보를 반환하는 SQL Server 보안 함수

보안 함수(Transact-SQL)

참고 항목

관련 자료

SQL Server 설치에 대한 보안 고려 사항

도움말 및 정보

SQL Server 2005 지원 받기