복제 보안 요소

업데이트: 2006년 12월 12일

소프트웨어 시스템의 보안을 설정할 때 고려해야 할 3가지 영역은 인증, 권한 부여 및 암호화입니다.

  • 인증은 한 엔터티(이 컨텍스트에서는 일반적으로 컴퓨터)가 보안 주체라고도 하는 다른 엔터티(일반적으로 다른 컴퓨터 또는 사용자)가 누구인지 또는 자신이 누구라고 입력했는지를 확인하는 프로세스입니다.
  • 권한 부여는 파일 시스템의 파일이나 데이터베이스의 테이블과 같은 리소스에 대한 액세스 권한을 인증된 보안 주체에게 부여하는 프로세스입니다.
  • 암호화는 데이터를 특수 키 없이 읽을 수 없는 형식으로 변환해서 의도한 받는 사람만 데이터를 읽을 수 있도록 하는 프로세스입니다.

인증 및 권한 부여

복제 보안은 인증 및 권한 부여를 사용하여 복제된 데이터베이스 개체 및 복제 처리와 관련된 컴퓨터와 에이전트에 대한 액세스를 제어합니다. 이 작업은 다음과 같은 3가지 메커니즘을 통해 수행됩니다.

  • 에이전트 보안
    복제 에이전트 보안 모델을 사용하여 복제 에이전트를 실행 및 연결하는 계정을 더욱 세밀하게 제어할 수 있습니다. 에이전트 보안 모델에 대한 자세한 내용은 복제 에이전트 보안 모델을 참조하십시오. 에이전트 로그인 및 암호 설정 방법은 복제의 로그인 및 암호 관리를 참조하십시오.
  • 관리 역할
    복제 설정, 유지 관리 및 처리에 올바른 서버 및 데이터베이스 역할이 사용되도록 합니다. 자세한 내용은 복제용 보안 역할 요구 사항을 참조하십시오.
  • PAL(게시 액세스 목록)
    PAL을 통해 게시에 대한 액세스 권한을 부여합니다. PAL 기능은 Microsoft Windows 액세스 제어 목록과 유사하게 작동합니다. 구독자가 게시자 또는 배포자에 연결하여 게시에 대한 액세스를 요청하면 에이전트가 전달한 인증 정보가 PAL과 비교됩니다. PAL에 대한 자세한 내용 및 최선의 방법은 게시자 보안을 참조하십시오.

암호화

복제는 테이블에 저장되거나 네트워크 연결을 통해 전달된 데이터를 암호화하지 않습니다. 이는 암호화가 VPN(가상 사설망), SSL(Secure Sockets Layer), IPSEC(IP 보안)과 같은 산업 표준 기술을 비롯한 다양한 기술을 사용하여 전송 수준에서 가능하기 때문에 의도된 것입니다. 복제 토폴로지에서 컴퓨터 간 연결에는 이러한 암호화 방법 중 하나를 사용하는 것이 좋습니다. 자세한 내용은 SQL Server 연결 암호화를 참조하십시오. VPN 및 SSL을 사용하여 인터넷에서 데이터를 복제하는 방법은 인터넷을 통한 복제 보안 설정을 참조하십시오.

SSL을 사용하여 복제 토폴로지에서 컴퓨터 간의 연결 보안을 유지하는 경우 각 복제 에이전트의 -EncryptionLevel 매개 변수 값을 1 또는 2로 지정합니다(값 2가 권장됨). 값 1을 지정하면 암호화가 사용되지만 에이전트에서 SSL 서버 인증서가 트러스트된 발급자에 의해 서명한 것인지 확인하지 않습니다. 값 2를 지정하면 인증서가 확인됩니다. 에이전트 프로필 및 명령줄에서 에이전트 매개 변수를 지정할 수 있습니다. 자세한 내용은 아래의 항목을 참조하십시오.

복제는 데이터를 암호화하는 데 사용되는 데이터베이스 마스터 키와 관련하여 다음과 같이 동작합니다.

  • 마스터 키가 복제와 관련된 데이터베이스(게시 데이터베이스, 구독 데이터베이스 또는 배포 데이터베이스)에 있는 경우 복제는 SQL Server 2005 데이터베이스 대칭 키를 사용하여 해당 데이터베이스에 있는 에이전트 암호를 암호화하고 해독합니다. 마스터 키를 사용하는 경우에는 복제와 관련된 각 데이터베이스에 마스터 키를 만들어야 합니다. 마스터 키가 복제와 관련된 데이터베이스에 없는 경우 복제는 SQL Server 2000에서 사용 가능한 알고리즘을 사용하여 해당 데이터베이스에 있는 에이전트 암호를 암호화하고 해독합니다. 마스터 키를 만드는 방법은 CREATE MASTER KEY(Transact-SQL)를 참조하십시오.
  • 복제 시 마스터 키는 복제되지 않습니다. 구독자에서 마스터 키가 필요한 경우에는 BACKUP MASTER KEY를 사용하여 게시 데이터베이스에서 마스터 키를 내보낸 다음 RESTORE MASTER KEY를 사용하여 구독 데이터베이스로 가져와야 합니다. 자세한 내용은 BACKUP MASTER KEY(Transact-SQL)RESTORE MASTER KEY(Transact-SQL)를 참조하십시오.
  • 연결 가능한 구독 데이터베이스에 대해 마스터 키가 정의되어 있는 경우에는 sp_attachsubscription(Transact-SQL)@db_master_key_password 매개 변수를 사용하여 해당 마스터 키를 지정합니다. 이렇게 하면 구독자에서 데이터베이스를 연결할 수 있습니다.

암호화 및 마스터 키에 대한 자세한 내용은 암호화 계층을 참조하십시오.

복제를 사용하여 암호화된 열 데이터를 게시할 수 있습니다. 구독자에서 이 데이터를 해독하고 사용하려면 게시자에서 데이터 암호화에 사용된 키가 구독자에도 있어야 합니다. 복제는 암호화 키를 전송하는 보안 메커니즘을 제공하지 않습니다. 구독자에서 직접 암호화 키를 다시 만들어야 합니다. 자세한 내용은 방법: 암호화된 열의 데이터 복제(SQL Server Management Studio)를 참조하십시오.

게시된 데이터 필터링

인증 및 권한 부여를 사용하여 복제된 데이터 및 개체에 대한 액세스를 제어하는 옵션을 비롯하여 복제에는 구독자에서 사용 가능한 데이터를 제어하는 두 가지 옵션, 즉 열 필터링과 행 필터링이 있습니다. 필터링에 대한 자세한 내용은 게시된 데이터 필터링을 참조하십시오.

아티클을 정의할 때는 게시에 필요한 열만 게시하고 불필요하거나 중요한 데이터를 포함하는 열은 생략할 수 있습니다. 예를 들어 AdventureWorks 데이터베이스에서 Customer 테이블을 현장에 있는 영업 담당자에게 게시하는 경우 회사 중역에게만 필요한 AnnualSales 열은 생략할 수 있습니다.

게시된 데이터를 필터링하여 데이터에 대한 액세스를 제한할 수 있고 구독자에서 사용 가능한 데이터를 지정할 수 있습니다. 예를 들어 Customer 테이블을 필터링하여 협력사에서는 ShareInfo 열의 값이 "예"인 고객에 대한 정보만 받을 수 있도록 할 수 있습니다. 병합 복제에서 HOST_NAME()을 포함하는 매개 변수가 있는 필터를 사용할 경우 보안 고려 사항이 있습니다. 자세한 내용은 매개 변수가 있는 행 필터의 "HOST_NAME()으로 필터링" 섹션을 참조하십시오.

참고 항목

개념

복제 보안을 위한 최선의 구현 방법

관련 자료

복제에 대한 보안 고려 사항

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 12월 12일

새로운 내용