방법: 복제 보안 설정 확인 및 수정(복제 Transact-SQL 프로그래밍)

복제에 필요한 보안 계정 설정(로그인 및 암호)은 게시 및 구독을 만들 때 정의됩니다. 이러한 설정은 나중에 복제 저장 프로시저를 사용하여 변경할 수 있습니다. 사용되는 저장 프로시저는 에이전트의 유형과 서버 연결의 유형에 따라 다릅니다.

[!참고]

보안을 위해 암호의 실제 값은 복제 저장 프로시저에 의해 반환된 결과 집합에서 마스킹됩니다.

보안 정보보안 정보

가능한 경우 다음의 모든 절차에서 런타임에 사용자에게 보안 자격 증명을 입력하라는 메시지를 표시하십시오. 스크립트 파일에 자격 증명을 저장하는 경우에는 무단으로 액세스하지 못하도록 파일에 보안을 설정해야 합니다.

복제 서버에서 저장된 암호의 모든 인스턴스를 변경하려면

  1. master 데이터베이스의 복제 토폴로지에 있는 서버에서 sp_changereplicationserverpasswords를 실행합니다. @login에 Microsoft Windows 계정 또는 암호를 변경할 Microsoft SQL Server 로그인을 지정하고 @password에 계정이나 로그인에 대한 새 암호를 지정합니다. 이렇게 하면 토폴로지의 다른 서버에 연결할 때 서버의 모든 에이전트에서 사용되는 암호의 모든 인스턴스가 변경됩니다.

    [!참고]

    토폴로지의 특정 서버에 대한 연결(예: 배포자 또는 구독자)의 로그인과 암호만 변경하려면 @server에 이 서버의 이름을 지정합니다.

  2. 암호를 업데이트해야 하는 복제 토폴로지의 모든 서버에서 1단계를 반복합니다.

    [!참고]

    복제 암호를 변경한 후 해당 암호를 사용하는 각 에이전트를 중지한 다음 다시 시작해야 에이전트에 변경 내용이 적용됩니다.

스냅숏 에이전트의 보안 설정을 변경하려면

  1. 게시자에서 sp_helppublication_snapshot을 실행하고 @publication을 지정합니다. 이렇게 하면 스냅숏 에이전트에 대한 현재 보안 설정이 반환됩니다.

  2. 게시자에서 sp_changepublication_snapshot을 실행하고 @publication 및 다음 중 변경할 보안 설정을 하나 이상 지정합니다.

    • 에이전트가 실행되는 Windows 계정을 변경하거나 이 계정에 대한 암호만 변경하려면 @job_login@job_password를 지정합니다.

    • 게시자에 연결할 때 사용되는 보안 모드를 변경하려면 @publisher_security_mode1 또는 0 값을 지정합니다.

    • 게시자 연결할 때 사용되는 보안 모드를 1에서 0으로 변경하는 경우 또는 이 연결에 사용되는 SQL Server 로그인을 변경하는 경우에는 @publisher_login@publisher_password를 지정합니다.

    보안 정보보안 정보

     게시자를 원격 배포자로 구성할 경우 job_login 및 job_password를 비롯한 모든 매개 변수에 제공된 값이 일반 텍스트로 배포자에게 보내집니다. 이 저장 프로시저를 실행하기 전에 게시자와 해당 원격 배포자 간 연결을 암호화해야 합니다. 자세한 내용은 SQL Server 연결 암호화를 참조하십시오.

로그 판독기 에이전트의 보안 설정을 변경하려면

  1. 게시자에서 sp_helplogreader_agent를 실행하고 @publisher를 지정합니다. 이렇게 하면 로그 판독기 에이전트에 대한 현재 보안 설정이 반환됩니다.

  2. 게시자에서 sp_changelogreader_agent를 실행하고 @publication 및 다음 중 변경할 보안 설정을 하나 이상 지정합니다.

    • 에이전트가 실행되는 Windows 계정을 변경하거나 이 계정에 대한 암호만 변경하려면 @job_login@job_password를 지정합니다.

    • 게시자에 연결할 때 사용되는 보안 모드를 변경하려면 @publisher_security_mode1 또는 0 값을 지정합니다.

    • 게시자 연결할 때 사용되는 보안 모드를 1에서 0으로 변경하는 경우 또는 이 연결에 사용되는 SQL Server 로그인을 변경하는 경우에는 @publisher_login@publisher_password를 지정합니다.

    [!참고]

    에이전트 로그인 또는 암호를 변경한 후 에이전트를 중지하고 다시 시작해야 변경 내용이 적용됩니다.

    보안 정보보안 정보

     게시자를 원격 배포자로 구성할 경우 job_login 및 job_password를 비롯한 모든 매개 변수에 제공된 값이 일반 텍스트로 배포자에게 보내집니다. 이 저장 프로시저를 실행하기 전에 게시자와 해당 원격 배포자 간 연결을 암호화해야 합니다. 자세한 내용은 SQL Server 연결 암호화를 참조하십시오.

밀어넣기 구독에 대한 배포 에이전트의 보안 설정을 변경하려면

  1. 게시 데이터베이스의 게시자에서 sp_helpsubscription을 실행하고 @publication@subscriber를 지정합니다. 이렇게 하면 배포자에서 실행되는 배포 에이전트에 대한 보안 설정을 포함하는 구독 속성이 반환됩니다.

  2. 게시 데이터베이스의 게시자에서 sp_changesubscription을 실행하고 @publication, @subscriber, @subscriber_db를 지정하고, @articleall 값을, @property에 보안 속성의 이름을, @value에 속성의 새 값을 지정합니다.

  3. 변경할 다음 각 보안 속성에 대해 2단계를 반복합니다.

    • 에이전트가 실행되는 Windows 계정을 변경하거나 이 계정에 대한 암호만 변경하려면 @propertydistrib_job_password 값을 지정하고 @value에 새 암호를 지정합니다. 계정 자체를 변경하는 경우 @propertydistrib_job_login 값을, @value에 새 Windows 계정을 지정하고 2단계를 반복합니다.

    • 구독자에 연결하는 데 사용되는 보안 모드를 변경하려면 @propertysubscriber_security_mode 값, @value1(Windows 통합 인증) 또는 0(SQL Server 인증) 값을 지정합니다.

    • 구독자 보안 모드를 SQL Server 인증으로 변경하거나 SQL Server 인증에 대한 로그인 정보를 변경하는 경우 @propertysubscriber_password 값을 지정하고 @value에 새 암호를 지정합니다. 2단계를 반복하고 @propertysubscriber_login 값을, @value에 새 로그인을 지정합니다.

    [!참고]

    에이전트 로그인 또는 암호를 변경한 후 에이전트를 중지하고 다시 시작해야 변경 내용이 적용됩니다.

    보안 정보보안 정보

     원격 배포자로 게시자를 구성할 경우 distrib_job_logindistrib_job_password를 포함하여 모든 속성에 제공된 값이 일반 텍스트로 배포자에 보내집니다. 이 저장 프로시저를 실행하기 전에 게시자와 해당 원격 배포자 간 연결을 암호화해야 합니다. 자세한 내용은 SQL Server 연결 암호화를 참조하십시오.

끌어오기 구독에 대한 배포 에이전트의 보안 설정을 변경하려면

  1. 구독자에서 sp_helppullsubscription을 실행하고 @publication을 지정합니다. 이렇게 하면 구독자에서 실행되는 배포 에이전트에 대한 보안 설정을 포함하는 구독 속성이 반환됩니다.

  2. 구독 데이터베이스의 구독자에서 sp_change_subscription_properties를 실행하고 @publisher, @publisher_db, @publication을 지정하고 @property에 보안 속성의 이름을, @value에 속성의 새 값을 지정합니다.

  3. 변경할 다음 각 보안 속성에 대해 2단계를 반복합니다.

    • 에이전트가 실행되는 Windows 계정을 변경하거나 이 계정에 대한 암호만 변경하려면 @propertydistrib_job_password 값을 지정하고 @value에 새 암호를 지정합니다. 계정 자체를 변경하는 경우 @propertydistrib_job_login 값을, @value에 새 Windows 계정을 지정지정하고 2단계를 반복합니다.

    • 배포자에 연결하는 데 사용되는 보안 모드를 변경하려면 @propertydistributor_security_mode 값, @value1(Windows 통합 인증) 또는 0(SQL Server 인증) 값을 지정합니다.

    • 배포자 보안 모드를 SQL Server 인증으로 변경하거나 SQL Server 인증에 대한 로그인 정보를 변경하는 경우 @propertydistributor_password 값을 지정하고 @value에 새 암호를 지정합니다. 2단계를 반복하고 @propertydistributor_login 값을, @value에 새 로그인을 지정합니다.

    [!참고]

    에이전트 로그인 또는 암호를 변경한 후 에이전트를 중지하고 다시 시작해야 변경 내용이 적용됩니다.

밀어넣기 구독에 대한 병합 에이전트의 보안 설정을 변경하려면

  1. 게시 데이터베이스의 게시자에서 sp_helpmergesubscription을 실행하고 @publication, @subscriber@subscriber_db를 지정합니다. 이렇게 하면 배포자에서 실행되는 병합 에이전트에 대한 보안 설정을 포함하는 구독 속성이 반환됩니다.

  2. 게시 데이터베이스의 게시자에서 sp_changemergesubscription을 실행하고 @publication, @subscriber, @subscriber_db를 지정하고, @property에 보안 속성의 이름을, @value에 속성의 새 값을 지정합니다.

  3. 변경할 다음 각 보안 속성에 대해 2단계를 반복합니다.

    • 에이전트가 실행되는 Windows 계정을 변경하거나 이 계정에 대한 암호만 변경하려면 @propertymerge_job_password 값을 지정하고 @value에 새 암호를 지정합니다. 계정 자체를 변경하는 경우 2단계를 반복하고 @propertymerge_job_login 값을, @value에 새 Windows 계정을 지정합니다.

    • 구독자에 연결하는 데 사용되는 보안 모드를 변경하려면 @propertysubscriber_security_mode 값, @value1(Windows 통합 인증) 또는 0(SQL Server 인증) 값을 지정합니다.

    • 구독자 보안 모드를 SQL Server 인증으로 변경하거나 SQL Server 인증에 대한 로그인 정보를 변경하는 경우 @propertysubscriber_password 값을 지정하고 @value에 새 암호를 지정합니다. 2단계를 반복하고 @propertysubscriber_login 값을, @value에 새 로그인을 지정합니다.

    • 게시자에 연결하는 데 사용되는 보안 모드를 변경하려면 @propertypublisher_security_mode 값, @value1(Windows 통합 인증) 또는 0(SQL Server 인증) 값을 지정합니다.

    • 게시자 보안 모드를 SQL Server 인증으로 변경하거나 SQL Server 인증에 대한 로그인 정보를 변경하는 경우 @propertypublisher_password 값을 지정하고 @value에 새 암호를 지정합니다. 2단계를 반복하고 @propertypublisher_login 값을, @value에 새 로그인을 지정합니다.

    [!참고]

    에이전트 로그인 또는 암호를 변경한 후 에이전트를 중지하고 다시 시작해야 변경 내용이 적용됩니다.

    보안 정보보안 정보

     원격 배포자로 게시자를 구성할 경우 merge_job_loginmerge_job_password를 포함하여 모든 속성에 제공된 값이 일반 텍스트로 배포자에 보내집니다. 이 저장 프로시저를 실행하기 전에 게시자와 해당 원격 배포자 간 연결을 암호화해야 합니다. 자세한 내용은 SQL Server 연결 암호화를 참조하십시오.

끌어오기 구독에 대한 병합 에이전트의 보안 설정을 변경하려면

  1. 구독자에서 sp_helpmergepullsubscription을 실행하고 @publication을 지정합니다. 이렇게 하면 구독자에서 실행되는 병합 에이전트에 대한 보안 설정을 포함하는 구독 속성이 반환됩니다.

  2. 구독 데이터베이스의 구독자에서 sp_change_subscription_properties를 실행하고 @publisher, @publisher_db, @publication을 지정하고 @property에 보안 속성의 이름을, @value에 속성의 새 값을 지정합니다.

  3. 변경할 다음 각 보안 속성에 대해 2단계를 반복합니다.

    • 에이전트가 실행되는 Windows 계정을 변경하거나 이 계정에 대한 암호만 변경하려면 @propertymerge_job_password 값을 지정하고 @value에 새 암호를 지정합니다. 계정 자체를 변경하는 경우 2단계를 반복하고 @propertymerge_job_login 값을, @value에 새 Windows 계정을 지정합니다.

    • 배포자에 연결하는 데 사용되는 보안 모드를 변경하려면 @propertydistributor_security_mode 값, @value1(Windows 통합 인증) 또는 0(SQL Server 인증) 값을 지정합니다.

    • 배포자 보안 모드를 SQL Server 인증으로 변경하거나 SQL Server 인증에 대한 로그인 정보를 변경하는 경우 @propertydistributor_password 값을 지정하고 @value에 새 암호를 지정합니다. 2단계를 반복하고 @propertydistributor_login 값을, @value에 새 로그인을 지정합니다.

    • 게시자에 연결하는 데 사용되는 보안 모드를 변경하려면 @propertypublisher_security_mode 값, @value1(Windows 통합 인증) 또는 0(SQL Server 인증) 값을 지정합니다.

    • 게시자 보안 모드를 SQL Server 인증으로 변경하거나 SQL Server 인증에 대한 로그인 정보를 변경하는 경우 <legacyBold>@property</legacyBold>에 <legacyBold>publisher_password</legacyBold> 값을 지정하고 <legacyBold>@value</legacyBold>에 새 암호를 지정합니다. 2단계를 반복하고 @propertypublisher_login 값을, @value에 새 로그인을 지정합니다.

    [!참고]

    에이전트 로그인 또는 암호를 변경한 후 에이전트를 중지하고 다시 시작해야 변경 내용이 적용됩니다.

구독자에 대한 필터링된 스냅숏을 생성하도록 스냅숏 에이전트의 보안 설정을 변경하려면

  1. 게시자에서 sp_helpdynamicsnapshot_job을 실행하고 @publication을 지정합니다. 결과 집합에서 변경할 구독자 파티션의 job_name 값을 확인합니다.

  2. 게시자에서 sp_changedynamicsnapshot_job을 실행하고 @publication을 지정하고 @dynamic_snapshot_jobname에 1단계에서 얻은 값을, @job_password에 새 암호를, @job_login@job_password에 에이전트가 실행되는 Windows 계정의 로그인과 암호를 지정합니다.

    보안 정보보안 정보

     게시자를 원격 배포자로 구성할 경우 job_login 및 job_password를 비롯한 모든 매개 변수에 제공된 값이 일반 텍스트로 배포자에게 보내집니다. 이 저장 프로시저를 실행하기 전에 게시자와 해당 원격 배포자 간 연결을 암호화해야 합니다. 자세한 내용은 SQL Server 연결 암호화를 참조하십시오.

큐 판독기 에이전트의 보안 설정을 변경하려면

  1. 배포자에서 sp_helpqreader_agent를 실행합니다. 이렇게 하면 큐 판독기 에이전트가 실행되는 현재 Windows 계정이 반환됩니다.

    • 배포자에서 sp_changeqreader_agent를 실행하고 @job_login@job_passwsord에 Windows 계정 설정을 지정합니다.

    [!참고]

    에이전트 로그인 또는 암호를 변경한 후 에이전트를 중지하고 다시 시작해야 변경 내용이 적용됩니다. 각 배포 데이터베이스에 대해 하나의 큐 판독기 에이전트가 있습니다. 에이전트에 대한 보안 설정을 변경하면 이 배포 데이터베이스를 사용하는 모든 게시자의 모든 게시 설정이 영향을 받습니다.

  2. 큐 판독기 에이전트는 구독에 대한 배포 에이전트와 동일한 연결 컨텍스트를 사용하여 구독자에 연결합니다.

게시자에 연결할 때 즉시 업데이트 구독자에서 사용되는 보안 모드를 변경하려면

  • 구독 데이터베이스의 구독자에서 sp_link_publication을 실행합니다. @publisher, @publication, @publisher_db에 대해 게시 데이터베이스의 이름, @security_mode에 대해 다음 값 중 하나를 지정합니다.

    • 0 - 게시자에서 업데이트할 때 SQL Server 인증을 사용합니다. 이 옵션을 사용하려면 @login@password에 대해 게시자에 유효한 로그인을 지정해야 합니다.

    • 1 - 게시자에 연결할 때 구독자에서 변경 작업을 수행하는 사용자의 보안 컨텍스트를 사용합니다. 이 보안 모드에 관한 제한 사항에 대해서는 sp_link_publication을 참조하십시오.

    • 2 - sp_addlinkedserver(Transact-SQL)를 사용하여 만든 기존의 사용자 정의 연결된 서버 로그인을 사용합니다.

원격 배포자에 대한 암호를 변경하려면

  1. 배포 데이터베이스의 배포자에서 sp_changedistributor_password를 실행하고 @password에 이 로그인의 새 암호를 지정합니다.

    중요 정보중요

    distributor_admin의 암호를 직접 변경하지 마십시오.

  2. 이 원격 배포자를 사용하는 모든 게시자에서 sp_changedistributor_password를 실행하고 @password에 1단계의 암호를 지정합니다.