2017-05-01 22 views
1

약 45 개의 개별 패키지가있는 SSIS 솔루션이 있습니다. 각 패키지에는 클라우드 내에 데이터를 저장하는 공급자 중 하나에서 데이터를 가져 오는 데 사용되는 웹 서비스 태스크가 포함되어 있습니다.웹 서비스 작업 편집기에서 파일 및 하드 코딩 된 문자열의 문자열 연결

문제점은 각 웹 서비스 작업이 "연결 문자열"을 사용하여 공급자 서버에 대한 보고서를 참조한다는 것입니다. 이 연결 문자열은 웹 서비스 태스크의 입력 탭에있는 "값"섹션에 배치됩니다. 그러나 암호는 90 일마다 제공자에게 만료되며 암호가 만료되면 각 패키지의 연결 문자열을 변경해야합니다.

conntection 문자열은 [암호화 된 암호] [보고 이름]과 같은 구조로되어 있습니다.

내가 뭘하고 싶은지는 .txt를 참조하는 변수를 만드는 것입니다. 연결 문자열의 [암호화 된 암호] 부분이있는 파일을 열고 [보고서 이름] 부분을 연결하십시오. 이렇게하면 암호가 변경 될 때마다 .txt 파일 내에서만 변경하면됩니다.

누군가가 .txt 파일 내의 값과 변수 작성자 내에서 하드 코딩 된 문자열을 연결하는 변수를 작성해 주시겠습니까?

+0

암호를 파일에 저장할 필요가 없습니다. 매개 변수를 사용하고 민감한 것으로 표시하는 것이 좋습니다. 패키지 또는 프로젝트 배포를 사용하고 있습니까? –

+0

프로젝트 배포. 위에서 언급 한 동일한 매개 변수를 각 개별 프로젝트에서 참조 할 수 있습니까? 가장 큰 문제는 암호화 된 암호를 한 곳에서 45 개가 아닌 한 곳으로 변경하는 것입니다. –

+0

여러 프로젝트가 있습니까? 당신은 포장을 의미합니까? –

답변

0

당신은 파일에 암호를 저장 할 필요가 없습니다 감사합니다. 프로젝트 배포 모델을 사용하는 경우 프로젝트 매개 변수 만 사용하면됩니다.

SSIS 프로젝트의 Visual Studio에서 project.params라는 항목을 볼 수 있습니다. 두 번 클릭하여 편집 할 수 있습니다. 매개 변수 창에서 새 매개 변수와 암호를 추가하십시오. "servicePassword"라고 말하십시오. 민감한 값을으로 설정하십시오.

각 웹 서비스 작업의 속성 탭에서 표현식을 클릭하십시오. 연결 문자열을 선택하고 @ [$ Project :: servicePassword] + "[reportName]", 으로 설정하십시오. 여기서 [reportName]은 현재 webservice 작업에 대한 보고서입니다. 이 단계에서 webservice URL을 사용해야 할 수도 있습니다.

프로젝트를 SSIS 카탈로그에 배포 한 후에는 해당 시점에 유효한 프로덕션 암호를 사용하도록 프로젝트를 구성 할 수 있습니다. SSMS를 열고 통합 서비스 카탈로그로 이동하여 프로젝트 폴더를 확장 한 다음 프로젝트를 마우스 오른쪽 단추로 클릭하고 구성을 선택합니다. servicePassword 매개 변수를 설정하십시오.