天天看点

SQL Server 2012 Managed Service Account

(一)Windows服务使用的登陆帐号

Windows服务只有登录到某一帐户的情况下才能访问操作系统中的资源和对象。服务一般不要更改默认的登录帐户,否则可能导致服务失败。如果选定帐户没有足够的权限,Microsoft 管理控制台(MMC)的服务管理单元将自动为该帐户授予登录所管理计算机中服务的用户权限。Windows Server 的服务可以用域帐户或者三个内置的本地帐户作为各系统服务的登录帐户,三个内置帐户没有密码:

(1) 本地系统帐户(Local System):本地系统帐户功能强大,它可对系统进行完全访问

(2) 本地服务帐户(NT AUTHORITY\Local Service)

(3) 网络服务帐户(NT AUTHORITY\Network Service)

系统中绝大多数的服务都是使用上述三个内置本地帐户作为登陆帐户。

SQL Server 2012 Managed Service Account

(二)Managed Service Account

在一些情况下使用域帐户和内置帐户存在一些问题,假设SQL Server的服务使用的是Local System帐号,那么其他使用Local System帐号的服务都可以连接到SQL Server数据库;如果使用的是域帐户,那么域帐户的密码在更改后,还需要在services.msc中手动相应更改这些服务的登陆帐户密码;如果服务所使用的域帐户的密码设置为永不过期,又会留下系统安全隐患,所以从Windows Server 2008 R2和Windows 7开始,一个新功能Managed Service Account(托管服务帐户)应运而生。托管服务帐户的密码由系统生成,每30天更改一次,使用托管服务帐户作为Windows服务的登陆帐户不需要设置密码。托管服务帐户要只能绑定在一台计算机上使用。为了将不同的Windows服务隔离开,一个托管服务帐户应该只给一个服务来使用。

(三)SQL Server 2012中的Managed Service Account

<a href="https://images0.cnblogs.com/blog/442200/201410/052200192845118.png"></a>

SQL Server所使用的托管服务帐户命名规范如下表

Service Name

Instance

Service Account Naming Convention

Database Engine

Default

MSSQLServer

Agent Service

SQLSERVERAgent

Reporting Server

ReportServer

Analysis Service

MSSQLServerOLAPService

Fulltext Service

MSSQLFDLauncher

InstanceName

MSSQL$InstanceName

SQLAgent$InstanceName

ReportServer$InstanceName

MSOLAP$InstanceName

MSSQLFDLauncher$InstanceName

Integration Service

Not applicable

MSDtsServer110

检查一下,SQL Server中,Database Engine和SQL Server Agent所使用的服务帐户都被赋予了Sa角色。

SQL Server 2012 Managed Service Account

总结:

(1) 在以前的系统中,Windows服务可以使用域帐户,也可以使用三个内置的本地帐户作为登陆帐户。这三个本地帐户分别为 Local System、NT AUTHORITY\Local Service 和 NT AUTHORITY\Network Service。选定Windows服务登陆帐户时,该帐户可以不具有任何权限,MMC的服务管理单元将自动为该帐户授予登录所管理计算机中服务的用户权限。

(2) 从Windows 7和Windows 2008 R2开始出现了Managed Service Account,使用这种类型的帐户,系统可以自动为你处理帐户密码。

(3) SQL Server 2012为每个SQL Server相关的服务都创建了一个托管服务帐户(SQL Server Browser和Analysis Service除外)。

本文转自JF Zhu博客园博客,原文链接: http://www.cnblogs.com/jfzhu/p/4007472.html   ,如需转载请自行联系原作者