/// <summary> /// 使用用户凭据 /// </summary> /// <param name="userName">用户名称</param> /// <param name="userPassword">用户密码</param> /// 时间:2016-02-02 15:57 /// 备注: public void SetServiceRunAs(string userName, string userPassword) { ServiceRunAs = ServiceRunAs.UserLogin; ValidateOperator.Begin().NotNullOrEmpty(userName, "服务登陆用户名称").NotNullOrEmpty(userPassword, "服务登陆用户密码"); UserName = userName; UserPassword = userPassword; }
/// <summary> /// 构造函数 /// </summary> /// <param name="description">安装服务后,服务的描述</param> /// <param name="displayName">显示名称</param> /// <param name="serviceName">服务名称</param> /// 时间:2016-02-02 15:04 /// 备注: public TopshelfHelper(string description, string displayName, string serviceName) { ValidateOperator.Begin().NotNullOrEmpty(description, "安装服务后,服务的描述").NotNullOrEmpty(displayName, "服务显示名称").NotNullOrEmpty(serviceName, "服务名称"); Description = description; DisplayName = displayName; ServiceName = serviceName; ServiceRunAs = ServiceRunAs.LocalSystem; }
/// <summary> /// Local Service账户是预设的拥有最小权限的本地账户,并在网络凭证中具有匿名的身份。Local Service账户通常可以访问Local Service、Everyone组还有认证用户有权限访问的资源。 /// </summary> /// 时间:2016-02-02 15:52 /// 备注: public void SetRunAsLocalService() { ServiceRunAs = ServiceRunAs.LocalService; }
/// <summary> /// 当安装了服务时,安装程序将提示输入用户名/密码组合用于启动该服务。 /// </summary> /// 时间:2016-02-02 15:52 /// 备注: public void SetRunAsPrompt() { ServiceRunAs = ServiceRunAs.Prompt; }
/// <summary> /// Network Service账户是预设的拥有本机部分权限的本地账户,它能够以计算机的名义访问网络资源。但是他没有Local System 那么多的权限,以这个账户运行的服务会根据实际环境把访问凭据提交给远程的计算机。Network Service账户通常可以访问Network Service、Everyone组,还有认证用户有权限访问的资源。 /// </summary> /// 时间:2016-02-02 15:52 /// 备注: public void SetRunAsNetworkService() { ServiceRunAs = ServiceRunAs.NetworkService; }
/// <summary> /// LocalSystem是预设的拥有本机所有权限的本地账户,这个账户跟通常的用户账户没有任何关联,也没有用户名和密码之类的凭证。这个服务账户可以打开注册表的HKEY_LOCAL_MACHINE\Security键,当LocalSystem访问网络资源时,它是作为计算机的域账户使用的。 /// </summary> /// 时间:2016-02-02 15:51 /// 备注: public void SetRunAsLocalSystem() { ServiceRunAs = ServiceRunAs.LocalSystem; }