데이터베이스 개발자 Tip & 강좌

SQLER의 개발자들이 만들어가는 데이터베이스 사용자 Tip & 강좌 게시판입니다. SQL서버, Oracle, MySQL 등 여러 클라우드/오픈소스 기반 데이터베이스 개발 및 운영 관련 팁과 쿼리 노하우를 이곳에서 가장 먼저 접하실 수 있습니다. 많은 도움 되시길 바랍니다.

보안 – 보안 레벨에 따른 암호화 수준

 

안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://jevida.blog.me)

이번 시간에는 [보안] 에 대해서 알아 보겠습니다.

 

SSIS는 패키기 수준에서 강력한 보안을 제공 합니다. SSIS에서 제공하는 보안과 관련된 사항은 다음과 같습니다.

  • 패키지의 ProtectionLevel 설정에 따라 패키지의 암호화를 설정할 수 있습니다. 데이터베이스 암호나 연결 문자열 등과 같은 중요한 데이터를 포함시키지 않도록 설정하거나 암호화 수준을 설정할 수 있습니다.
  • ProtectionLevel 및 PackagePassword 속성을 이용하여 패키지의 보안을 설정할 수 있습니다. 암호를 이용하거나 개인 키를 이용하여 보안을 설정할 수 있습니다.
  • 보안과 관련된 사항을 SQL Server가 담당하도록 지정할 수 있습니다. ProtectionLevel을 ServeStorage로 설정한 후 패키지를 SQL Server의 msdb에 직접 저장하면 패키지의 보안 관련된 사항은 모두 SQL Server에서 관리하게 됩니다.

 

중요한 데이터란 DB 연결정보, 암호, MXL노드 정보 등과 같은 연결 정보입니다.

 

[BIDS]를 실행하여 [Integration Services 프로젝트]를 실행 합니다.

 

[제어 흐름]탭에서 [SQL 실행 태스크]를 마우스를 이용하여 드래그 앤 드롭으로 끌어다 놓습니다.

[속성]창에서 [ProtectionLevel]을 선택 합니다. [EncryptionAllWithPassword]를 선택 합니다.

 

[Protection Level]

설정값

상세 설명

DontSaveSensitive

(중요한 정보 저장 안함)

패키지를 저장할 때 중요한 정보 제외. 암호화는 사용하지 않지만 중요한 것으로 표시된 속성이 패키지로 저장되는 것을 방지. 사용자가 중요한 데이터를 사용하지 못하도록 함. 이 설정은 동일한 사용자가 패키지를 저장하여 닫은 후 다시 여는 경우라도 저장이 되지 않기 때문에 매번 패키지를 열 때마다 중요한 정보를 다시 지정해야 함.

EncryptAllWithPassword

(암호로 모두 암호화)

암호를 사용하여 전체 패키지를 암호화. 패키지를 만들거나 내보낼 때 사용자가 입력한 암호를 사용하여 패키지를 암호화 함. 사용자는 SSIS 디자이너에서 패키지를 열거나 dtexec명령프롬프트 유틸리티에서 패키지를 실행 할 때 패키지 암호를 입력해야 함. 암호를 입력하지 않을 시 패키지 실행이 불가능 함. 이 설정을 적용할 경우 PackagePassword 항목에 적절한 암호를 지정한 후 패키지를 저장해야 합니다.

EncryptAllWithUserKey

(사용자 키로 모두 암호화)

사용자 프로필을 기반으로 하는 암호를 사용하여 전체 패키지를 암호화 함. 동일한 프로필을 사용하는 동일한 사용자만 패키지를 로드 할 수 있음. 패키지를 만들거나 내보낸 사용자를 기반으로 하는 키를 사용하여 패키지를 암호화 함. 패키지를 만들거나 내보낸 사용자만 SSIS 디자이너에서 패키지를 열거나 dtexec 명령프롬프트 유틸리티를 사용하여 패키지를 실행 할 수 있음.

EncryptSensitiveWithPassword

(암호로 중요한 정보 암호화)

암호를 사용하여 패키지 내의 중요한 정보를 암호화. 암호화에는 DPAPI가 사용. 중요한 데이터는 패키지의 일부로 저장되지만 패키지를 만들거나 내보낼 때 사용자가 입력한 암호를 사용하여 암호화 됨. SSIS 디자이너에서 패키지를 열려면 패키지 암호를 입력해야 합니다. 암호를 입력하지 않으면 패키지의 중요한 정보 부분에 값을 입력해야 합니다. 암호를 입력하지 않으면 패키지를 실행 할 수 없습니다. 이 설정을 적용할 경우 PackagePassword 항목에 적절한 암호를 지정한 후 패키지를 저장해야 합니다.

EncryptSensitiveWithUserKey

(사용자키로 중요정보 암호화)

현재 사용자를 기반으로 하는 키를 사용하여 패키지 내의 중요한 정보를 암호화. 동일한 프로필을 사용하는 동일한 사용자만 패키지를 로드할 수 있음. 다른 사용자가 패키지를 여는 경우 중요한 정보는 빈칸으로 대체되므로 현재 사용자가 중요한 데이터에 새 값을 지정해야 합니다. 사용자가 패키지를 실행하려고 시도하는 경우 패키지 실행이 실패 합니다. 암호화는 DPAPI가 사용 됩니다.

ServerStorage

(암호화에 서버 저장소 사용)

SQL Server 데이터베이스 역할을 사용하여 전체 패키지를 보호. 이 옵션은 패키지를 SQL Server msdb데이터베이스에 저장할 때만 지원됨. BIDS에서 파일 시스템에 패키지를 저장하는 경우에는 지원되지 않습니다.

 

 

[PackagePassword]를 클릭하여 암호를 입력 합니다.

 

[BIDS]를 재실행 하여 실습한 [보안] 프로젝트를 불러오기 합니다.

아래 그림과 같이 패키지 암호를 입력하는 창이 나타납니다.

[취소]를 클릭하여 암호 입력을 하지 않습니다.

 

 

패키지를 로드 할 수 없다는 오류와 함께 패키지 조회가 불가능 합니다.

 

ProtectionLevel이 Sensitive인 경우에는 중요 정보만 확인할 수 없으며 나머지 패키지의 개체는 조회가 가능 합니다. All인 경우에는 암호가 다르면 패키지의 조회도 불가능 합니다. 

강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp



No. Subject Author Date Views
1573 SSAS 차원 - (3) 롤-플레잉 차원 jevida(강성욱) 2013.10.14 6087
1572 SSAS 차원 - (2) 시간 차원 jevida(강성욱) 2013.10.14 6019
1571 SSAS 차원 - (1) 표준 차원 jevida(강성욱) 2013.10.14 5740
1570 SSAS - 큐브 조회 jevida(강성욱) 2013.10.07 7975
1569 SSAS - 큐브 만들기 jevida(강성욱) 2013.10.07 9171
1568 SSAS - SSAS 환경 설정 jevida(강성욱) 2013.10.07 9218
1567 SSIS - BIDS 임시 파일 위치 설정 jevida(강성욱) 2013.10.02 8741
1566 SSIS - SSIS패키지 실행 하기. – Job Agent 등록 및 수동 실행 jevida(강성욱) 2013.10.02 15364
1565 SSIS - 패키지 저장 방식의 종류 및 장점. jevida(강성욱) 2013.10.02 8313
1564 SSIS - 성능 카운터 - SSIS를 튜닝 하자 jevida(강성욱) 2013.10.02 9191
1563 SSIS - 배포 및 배포 마법사 jevida(강성욱) 2013.10.02 10917
1562 SSIS - 로깅 - SSIS의 실행 정보를 로깅하자 jevida(강성욱) 2013.10.02 7630
» SSIS - 보안 - 보안레벨에 따른 암호화 수준. jevida(강성욱) 2013.10.02 9127
1560 SSIS - 트랜잭션 - 패키지에서 트랜잭션을 제어 하자 jevida(강성욱) 2013.10.02 7559
1559 SSIS -스크립트 작업 및 ActiveX 스크립트 작업 jevida(강성욱) 2013.10.02 8921
1558 SSIS - SQL 실행 작업 jevida(강성욱) 2013.10.02 11883
1557 SSIS - WMI 이벤트 감시자 작업 jevida(강성욱) 2013.09.25 8344
1556 SSIS - WMI 데이터 판독기 작업 jevida(강성욱) 2013.09.25 7639
1555 SSIS - FTP 작업 jevida(강성욱) 2013.09.25 9525
1554 SSIS - 파일 시스템 작업 - 폴더 생성 삭제, 파일 복사 삭제 등 관리 작업을 하자 jevida(강성욱) 2013.09.25 9678





XE Login