안전한 배포(Integration Services)
Integration Services 패키지 수명 주기의 다른 단계와 마찬가지로 다음과 같은 방법을 구현하여 개발 컴퓨터에서 다른 컴퓨터로 패키지를 배포할 때 보안을 향상시킬 수 있습니다.
신뢰할 수 있는 원본의 패키지만 열고 실행합니다.
즉, 패키지 배포 시 디지털 인증서로 패키지를 서명하여 패키지의 원본을 확인합니다.
권한 있는 사용자만 패키지를 열고 실행하도록 합니다.
즉, 패키지 배포 시 Integration Services, SQL Server 및 파일 시스템에서 제공하는 보안 기능을 사용하여 다음과 같은 작업을 수행할 수 있어야 합니다.
패키지의 보호 수준을 설정하여 패키지의 내용을 보호합니다.
파일 시스템 보안을 사용하여 패키지 및 패키지와 연결된 추가 파일에 대한 액세스를 제어합니다.
디지털 서명을 사용하여 패키지 원본 확인
패키지를 만들거나 마지막으로 수정한 개인이나 조직 구성 단위를 식별하는 디지털 인증서로 패키지를 서명할 수 있습니다. 그러면 관리자는 레지스트리나 dtexec 명령줄에서 선택적 설정을 지정하여 다음과 같은 태스크를 수행하도록 Integration Services를 구성할 수 있습니다.
패키지에 대한 유효하고 신뢰할 수 있는 서명을 요구합니다.
패키지를 열 때 서명을 확인합니다.
서명되지 않은 패키지를 경고하거나 거부합니다.
디지털 서명에 대한 자세한 내용은 다음 항목을 참조하십시오.
보호 수준을 설정하여 패키지 내용 보호
패키지의 ProtectionLevel 속성을 설정하면 패키지에 포함된 중요한 데이터(예: 암호)나 패키지의 모든 내용을 암호화할 수 있습니다. 예를 들어 다음과 같은 보호 수준을 설정할 수 있습니다.
DontSaveSensitive 옵션을 선택하여 중요한 데이터를 완전히 제거할 수 있습니다.
EncryptSensitiveWithPassword 옵션을 선택하여 암호를 제공하는 사용자만 중요한 데이터를 볼 수 있도록 할 수 있습니다.
EncryptAllWithPassword 옵션을 선택하여 암호를 제공하는 사용자만 패키지를 로드하고 실행할 수 있도록 할 수 있습니다.
다른 컴퓨터에 패키지를 배포할 때는 EncryptSensitiveWithUserKey 및 EncryptAllWithUserKey 옵션을 제거해야 합니다. 개발하는 동안 개발자는 EncryptSensitiveWithUserKey 옵션을 설정하여 자기 자신만 중요한 데이터를 볼 수 있도록 할 수 있습니다. 마찬가지로 개발자는 EncryptAllWithUserKey 옵션을 설정하여 자기 자신만 패키지를 로드하고 실행할 수 있도록 할 수 있습니다. 그러나 다른 컴퓨터에 패키지를 배포할 때 이러한 옵션은 패키지 작성자 이외의 사용자가 패키지를 로드하고 실행하지 못하게 합니다. 또한 이러한 두 옵션은 SQL Server 에이전트를 사용하여 패키지를 예약하지 못하게도 합니다.
개발하는 동안 개발자는 낮게 설정된 보호 수준을 사용할 수 있습니다. 그러나 패키지를 배포할 때는 보호 수준을 더 높게 설정하는 것이 좋습니다.
패키지를 SQL Server로 가져오거나 배포하면 ServerStorage 보호 수준을 Integration Services 역할과 함께 사용할 수 있습니다. 이러한 역할에 대한 자세한 내용은 Integration Services 역할 사용을 참조하십시오.
자세한 내용은 패키지 보호 수준 설정을 참조하십시오.
배포된 패키지 및 패키지에서 만들거나 사용하는 파일에 대한 액세스 제어
패키지를 배포할 때 패키지를 SQL Server의 msdb 데이터베이스에 저장할지 또는 파일 시스템에 저장할지를 결정할 수 있습니다.
SQL Server에 패키지를 저장하는 경우. SQL Server에서 제공하는 보안 기능과 고정 데이터베이스 수준 Integration Services 역할을 사용하여 저장된 패키지에 대한 액세스를 제어할 수 있습니다. 이러한 역할에 대한 자세한 내용은 Integration Services 역할 사용을 참조하십시오.
파일 시스템에 패키지를 저장하는 경우. Microsoft Windows에서 제공하는 보안 기능과 파일 시스템에서 제공하는 ACL(액세스 제어 목록)을 사용하여 저장된 패키지에 대한 액세스를 제어할 수 있습니다.
패키지를 배포할 때 구성 파일과 같은 추가 파일이 배포에 포함될 수 있습니다. 또한 이러한 파일에는 중요한 데이터가 들어 있을 수도 있습니다. 이러한 추가 파일에 대한 액세스를 제어하는 방법은 패키지에서 사용되는 파일에 대한 액세스 제어을 참조하십시오.
|