다음을 통해 공유


ClickOnce 신뢰 프롬프트 동작 구성

최종 사용자에게 Windows Forms 애플리케이션, Windows Presentation Foundation 애플리케이션, 콘솔 애플리케이션, WPF 브라우저 애플리케이션 및 Office 솔루션과 같은 ClickOnce 애플리케이션을 설치할 수 있는 옵션이 제공되는지 여부를 제어하도록 ClickOnce 신뢰 프롬프트를 구성할 수 있습니다. 각 최종 사용자의 컴퓨터에서 레지스트리 키를 설정하여 신뢰 프롬프트를 구성합니다.

다음 표에서는 각 5개 영역(인터넷, UntrustedSites, MyComputer, LocalIntranet 및 TrustedSites)에 적용할 수 있는 구성 옵션을 보여 줍니다.

선택 레지스트리 설정 값 묘사
신뢰 프롬프트를 사용하도록 설정합니다. Enabled 최종 사용자가 ClickOnce 애플리케이션에 트러스트를 부여할 수 있도록 ClickOnce 신뢰 프롬프트가 표시됩니다.
신뢰 프롬프트를 제한합니다. AuthenticodeRequired ClickOnce 신뢰 프롬프트는 ClickOnce 애플리케이션이 게시자를 식별하는 인증서로 서명된 경우에만 표시됩니다. 그렇지 않으면 ClickOnce 애플리케이션이 설치되지 않습니다.
신뢰 프롬프트를 사용하지 않도록 설정합니다. Disabled ClickOnce 신뢰 프롬프트가 표시되지 않습니다. 명시적으로 신뢰할 수 있는 인증서로 서명된 ClickOnce 애플리케이션만 설치됩니다.

다음 표에서는 각 영역에 대한 기본 동작을 보여줍니다. 애플리케이션 열은 Windows Forms 애플리케이션, Windows Presentation Foundation 애플리케이션, WPF 브라우저 애플리케이션 및 콘솔 애플리케이션을 참조합니다.

구역 응용 프로그램 Office 솔루션
MyComputer Enabled Enabled
LocalIntranet Enabled Enabled
TrustedSites Enabled Enabled
Internet Enabled AuthenticodeRequired
UntrustedSites Disabled Disabled

ClickOnce 트러스트 프롬프트를 사용하도록 설정, 제한 또는 사용하지 않도록 설정하여 이러한 설정을 재정의할 수 있습니다.

ClickOnce 신뢰 프롬프트 사용

해당 영역에서 제공되는 ClickOnce 애플리케이션을 설치하고 실행하는 옵션을 최종 사용자에게 표시하려는 경우 영역에 대한 신뢰 프롬프트를 사용하도록 설정합니다.

레지스트리 편집기를 사용하여 ClickOnce 신뢰 프롬프트를 사용하도록 설정하려면

  1. 레지스트리 편집기를 엽니다.

    1. 시작클릭한 다음 실행클릭합니다.

    2. 열기 상자에 regedit입력한 다음 확인클릭합니다.

  2. 다음 레지스트리 키를 찾습니다.

    \HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel

    키가 없는 경우 키를 만듭니다.

  3. 아래의 하위 키들이 아직 존재하지 않는다면, 문자열 값로서 다음 표에 표시된 해당 값을 추가하십시오.

    문자열 값 하위키
    Internet Enabled
    UntrustedSites Disabled
    MyComputer Enabled
    LocalIntranet Enabled
    TrustedSites Enabled

    Office 솔루션의 경우 Internet 기본값이 AuthenticodeRequiredUntrustedSites 값이 Disabled. 다른 모든 것에 대해, Internet의 기본값은 Enabled입니다.

프로그래밍 방식으로 ClickOnce 신뢰 프롬프트를 사용하도록 설정하려면

  1. Visual Studio에서 Visual Basic 또는 Visual C# 콘솔 애플리케이션을 만듭니다.

  2. 편집을 위해 Program.vb 또는 Program.cs 파일을 열고 다음 코드를 추가합니다.

    Microsoft.Win32.RegistryKey key;
    key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\MICROSOFT\\.NETFramework\\Security\\TrustManager\\PromptingLevel");
    key.SetValue("MyComputer", "Enabled");
    key.SetValue("LocalIntranet", "Enabled");
    key.SetValue("Internet", "AuthenticodeRequired");
    key.SetValue("TrustedSites", "Enabled");
    key.SetValue("UntrustedSites", "Disabled");
    key.Close();
    
  3. 애플리케이션을 빌드하고 실행합니다.

ClickOnce 신뢰 프롬프트 제한

신뢰할 수 있는 결정을 요구하기 전에 알려진 ID가 있는 Authenticode 인증서로 솔루션에 서명해야 하므로 신뢰 프롬프트를 제한합니다.

레지스트리 편집기를 사용하여 ClickOnce 신뢰 프롬프트를 제한하려면

  1. 레지스트리 편집기를 엽니다.

    1. 시작클릭한 다음 실행클릭합니다.

    2. 열기 상자에 regedit입력한 다음 확인클릭합니다.

  2. 다음 레지스트리 키를 찾습니다.

    \HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel

    키가 없는 경우 키를 만듭니다.

  3. 존재하지 않는 경우, 다음 표에 표시된 연결된 값과 함께 다음 하위 키를 문자열 값로 추가합니다.

    문자열 값 하위 키
    UntrustedSites Disabled
    Internet AuthenticodeRequired
    MyComputer AuthenticodeRequired
    LocalIntranet AuthenticodeRequired
    TrustedSites AuthenticodeRequired

프로그래밍 방식으로 ClickOnce 신뢰 프롬프트를 제한하려면

  1. Visual Studio에서 Visual Basic 또는 Visual C# 콘솔 애플리케이션을 만듭니다.

  2. 편집을 위해 Program.vb 또는 Program.cs 파일을 열고 다음 코드를 추가합니다.

    Microsoft.Win32.RegistryKey key;
    key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\MICROSOFT\\.NETFramework\\Security\\TrustManager\\PromptingLevel");
    key.SetValue("MyComputer", "AuthenticodeRequired");
    key.SetValue("LocalIntranet", "AuthenticodeRequired");
    key.SetValue("Internet", "AuthenticodeRequired");
    key.SetValue("TrustedSites", "AuthenticodeRequired");
    key.SetValue("UntrustedSites", "Disabled");
    key.Close();
    
  3. 애플리케이션을 빌드하고 실행합니다.

ClickOnce 신뢰 프롬프트를 사용하지 않도록 설정

보안 정책에서 아직 신뢰할 수 없는 솔루션을 설치하는 옵션이 최종 사용자에게 제공되지 않도록 신뢰 프롬프트를 사용하지 않도록 설정할 수 있습니다.

레지스트리 편집기를 사용하여 ClickOnce 신뢰 프롬프트를 사용하지 않도록 설정하려면

  1. 레지스트리 편집기를 엽니다.

    1. 시작클릭한 다음 실행클릭합니다.

    2. 열기 상자에 regedit를 입력하고 확인을 클릭합니다.

  2. 다음 레지스트리 키를 찾습니다.

    \HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel

    키가 없는 경우 키를 만듭니다.

  3. 아직 존재하지 않는 경우, 다음 하위 키를 문자열 값로 추가하고, 다음 표에 표시된 관련 값을 추가합니다.

    문자열 값 하위 키 가치
    UntrustedSites Disabled
    Internet Disabled
    MyComputer Disabled
    LocalIntranet Disabled
    TrustedSites Disabled

프로그래밍 방식으로 ClickOnce 신뢰 프롬프트를 사용하지 않도록 설정하려면

  1. Visual Studio에서 Visual Basic 또는 Visual C# 콘솔 애플리케이션을 만듭니다.

  2. 편집을 위해 Program.vb 또는 Program.cs 파일을 열고 다음 코드를 추가합니다.

    Microsoft.Win32.RegistryKey key;
    key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\MICROSOFT\\.NETFramework\\Security\\TrustManager\\PromptingLevel");
    key.SetValue("MyComputer", "Disabled");
    key.SetValue("LocalIntranet", "Disabled");
    key.SetValue("Internet", "Disabled");
    key.SetValue("TrustedSites", "Disabled");
    key.SetValue("UntrustedSites", "Disabled");
    key.Close();
    
    
  3. 애플리케이션을 빌드하고 실행합니다.