ServiceAccount 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
로그온 유형을 정의하는 서비스의 보안 컨텍스트를 지정합니다.
public enum class ServiceAccount
public enum ServiceAccount
type ServiceAccount =
Public Enum ServiceAccount
- 상속
필드
| Name | 값 | Description |
|---|---|---|
| LocalService | 0 | 로컬 컴퓨터에서 권한이 없는 사용자 역할을 하고 원격 서버에 익명 자격 증명을 제공하는 계정입니다. |
| NetworkService | 1 | 광범위한 로컬 권한을 제공하고 컴퓨터의 자격 증명을 원격 서버에 제공하는 계정입니다. |
| LocalSystem | 2 | 서비스 제어 관리자에서 사용하는 계정으로, 로컬 컴퓨터에 대한 광범위한 권한을 가지며 네트워크의 컴퓨터 역할을 합니다. |
| User | 3 | 네트워크의 특정 사용자가 정의한 계정입니다. 멤버를 |
예제
다음 코드 예제에서는 열거형을 사용하여 ServiceAccount 시스템 계정의 보안 컨텍스트를 사용하여 새 프로그램을 설치하는 방법을 보여 줍니다.
#using <System.dll>
#using <System.ServiceProcess.dll>
#using <System.Configuration.Install.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Configuration::Install;
using namespace System::ServiceProcess;
using namespace System::ComponentModel;
[RunInstaller(true)]
public ref class MyProjectInstaller : public Installer
{
private:
ServiceInstaller^ serviceInstaller1;
ServiceInstaller^ serviceInstaller2;
ServiceProcessInstaller^ processInstaller;
public:
MyProjectInstaller()
{
// Instantiate installers for process and services.
processInstaller = gcnew ServiceProcessInstaller;
serviceInstaller1 = gcnew ServiceInstaller;
serviceInstaller2 = gcnew ServiceInstaller;
// The services run under the system account.
processInstaller->Account = ServiceAccount::LocalSystem;
// The services are started manually.
serviceInstaller1->StartType = ServiceStartMode::Manual;
serviceInstaller2->StartType = ServiceStartMode::Manual;
// ServiceName must equal those on ServiceBase derived classes.
serviceInstaller1->ServiceName = "Hello-World Service 1";
serviceInstaller2->ServiceName = "Hello-World Service 2";
// Add installers to collection. Order is not important.
Installers->Add( serviceInstaller1 );
Installers->Add( serviceInstaller2 );
Installers->Add( processInstaller );
}
static void Main()
{
Console::WriteLine("Usage: InstallUtil.exe [<service>.exe]");
}
};
int main()
{
MyProjectInstaller::Main();
}
using System;
using System.Collections;
using System.Configuration.Install;
using System.ServiceProcess;
using System.ComponentModel;
[RunInstaller(true)]
public class MyProjectInstaller : Installer
{
private ServiceInstaller serviceInstaller1;
private ServiceInstaller serviceInstaller2;
private ServiceProcessInstaller processInstaller;
public MyProjectInstaller()
{
// Instantiate installers for process and services.
processInstaller = new ServiceProcessInstaller();
serviceInstaller1 = new ServiceInstaller();
serviceInstaller2 = new ServiceInstaller();
// The services run under the system account.
processInstaller.Account = ServiceAccount.LocalSystem;
// The services are started manually.
serviceInstaller1.StartType = ServiceStartMode.Manual;
serviceInstaller2.StartType = ServiceStartMode.Manual;
// ServiceName must equal those on ServiceBase derived classes.
serviceInstaller1.ServiceName = "Hello-World Service 1";
serviceInstaller2.ServiceName = "Hello-World Service 2";
// Add installers to collection. Order is not important.
Installers.Add(serviceInstaller1);
Installers.Add(serviceInstaller2);
Installers.Add(processInstaller);
}
public static void Main()
{
Console.WriteLine("Usage: InstallUtil.exe [<service>.exe]");
}
}
Imports System.Collections
Imports System.Configuration.Install
Imports System.ServiceProcess
Imports System.ComponentModel
<RunInstallerAttribute(True)> _
Public Class MyProjectInstaller
Inherits Installer
Private serviceInstaller1 As ServiceInstaller
Private serviceInstaller2 As ServiceInstaller
Private processInstaller As ServiceProcessInstaller
Public Sub New()
' Instantiate installers for process and services.
processInstaller = New ServiceProcessInstaller()
serviceInstaller1 = New ServiceInstaller()
serviceInstaller2 = New ServiceInstaller()
' The services will run under the system account.
processInstaller.Account = ServiceAccount.LocalSystem
' The services will be started manually.
serviceInstaller1.StartType = ServiceStartMode.Manual
serviceInstaller2.StartType = ServiceStartMode.Manual
' ServiceName must equal those on ServiceBase derived classes.
serviceInstaller1.ServiceName = "Hello-World Service 1"
serviceInstaller2.ServiceName = "Hello-World Service 2"
' Add installers to collection. Order is not important.
Installers.Add(serviceInstaller1)
Installers.Add(serviceInstaller2)
Installers.Add(processInstaller)
End Sub
Public Shared Sub Main()
Console.WriteLine("Usage: InstallUtil.exe [<service>.exe]")
End Sub
End Class
설명
설치하려는 ServiceAccount 서비스의 보안 컨텍스트를 ServiceProcessInstaller 지정하려면 초기화할 때 열거형을 사용합니다. 보안 컨텍스트는 서비스가 시스템에 대한 권한과 서비스에서 네트워크에서 작동하는 방식(예: 서비스가 컴퓨터의 자격 증명 또는 익명 자격 증명을 원격 서버에 제공하는지 여부)을 나타냅니다. 열거형은 ServiceAccount 특정 서비스에 필요한 권한을 정확하게 지정할 수 있도록 다양한 권한을 제공합니다.
이 값은 LocalSystem 높은 권한의 계정을 정의하지만 대부분의 서비스에는 이러한 상승된 권한 수준이 필요하지 않습니다. 및 NetworkService 열거형 멤버는 LocalService 보안 컨텍스트에 대해 더 낮은 권한 수준을 제공합니다.
메모
/> 및