Sql server 更改sqlserver服务帐户后的文件和文件夹权限

Sql server 更改sqlserver服务帐户后的文件和文件夹权限,sql-server,Sql Server,我阅读了这篇文章并得出结论,当我更改SQL server实例的服务帐户时,需要手动设置文件系统权限 因此,我通过SQL server Configuration Manager将我的SQL server实例的服务帐户更改为全新的本地帐户,并对SQL server服务可以启动感到惊讶,尽管我尚未为新帐户设置任何文件或文件夹权限。因此,该服务现在以本地用户的身份运行,但当我从Windows进行检查时,该用户无权访问默认的SQL数据文件夹。我还可以读取和写入默认备份文件夹。为什么它在缺少权限的情况下仍

我阅读了这篇文章并得出结论,当我更改SQL server实例的服务帐户时,需要手动设置文件系统权限


因此,我通过SQL server Configuration Manager将我的SQL server实例的服务帐户更改为全新的本地帐户,并对SQL server服务可以启动感到惊讶,尽管我尚未为新帐户设置任何文件或文件夹权限。因此,该服务现在以本地用户的身份运行,但当我从Windows进行检查时,该用户无权访问默认的SQL数据文件夹。我还可以读取和写入默认备份文件夹。为什么它在缺少权限的情况下仍能工作

之所以有效,是因为您使用SQL Server Configuration Manager更改了服务帐户。它使用权限完成所有额外的腿部工作,因此您不必这样做


另一方面,如果您要使用控制面板->管理工具中的标准“服务”管理单元,那么任何事情都无法立即进行,手动设置将是一种非常痛苦的体验。

因为您使用了SQL Server Configuration Manager来更改服务帐户,所以可以正常工作。它使用权限完成所有额外的腿部工作,因此您不必这样做

另一方面,如果您使用“控制面板”->“管理工具”中的标准“服务”管理单元,那么任何事情都不会立即发生,手动设置将是一次非常痛苦的经历。

从文章中我们得到了答案:

SQL Server服务帐户必须具有对资源的访问权限。为每个服务SID或本地Windows组设置了访问控制列表。我们从文章中得到了答案:


SQL Server服务帐户必须具有对资源的访问权限。已为每个服务SID或本地Windows组设置访问控制列表。是否确实用户帐户无法访问该文件夹?如果该服务在该用户(如果是)下运行,并且正常运行,则该用户可以访问该文件夹及其下的任何文件。您确定该用户帐户无法访问该文件夹吗?如果该服务在该用户(如果是)下运行,并且正常运行,则该用户可以访问该文件夹及其下的任何文件。我在Windows中看不到文件夹的任何新文件权限。我只看到虚拟帐户的旧权限。例如,下面是我通过PowerShell看到的内容:获取acl“C:\Program Files\Microsoft SQL Server\MSSQLSERVER\MSSQL\DATA”|选择-ExpandProperty accesstostring创建者所有者允许FullControl NT权限\SYSTEM允许FullControl内置\Administrator允许FullControl NT服务\MSSQLSERVER允许FullControl SQL服务作为新服务器运行名为localsqluser的用户,但该帐户没有对默认数据文件夹的任何权限。或者是否存在到虚拟帐户NT服务\MSSQLServer的隐藏连接我不确定哪些文件夹确实需要此类权限,但我记得1)SQL Server安装中的某些文件夹禁用了权限继承(至少在以前的版本中是这样),2)不仅仅是文件夹,还有很多注册表项和(可能)组策略也需要权限/成员资格。我刚刚发现了[this]()。和[文件]()。关键部分是这句话:SQLServer服务帐户必须能够访问资源。访问控制列表是为每个服务SID或本地Windows组设置的,因此本地帐户没有被分配任何文件夹权限权限-整个逻辑仍然取决于虚拟帐户及其链接到服务的方式。但是,当然还有其他东西和权限设置为我的本地帐户,例如,允许运行为服务,等等。我没有看到任何新的文件权限的文件夹在Windows中。我只看到虚拟帐户的旧权限。例如,下面是我通过PowerShell看到的内容:获取acl“C:\Program Files\Microsoft SQL Server\MSSQLSERVER\MSSQL\DATA”|选择-ExpandProperty accesstostring创建者所有者允许FullControl NT权限\SYSTEM允许FullControl内置\Administrator允许FullControl NT服务\MSSQLSERVER允许FullControl SQL服务作为新服务器运行名为localsqluser的用户,但该帐户没有对默认数据文件夹的任何权限。或者是否存在到虚拟帐户NT服务\MSSQLServer的隐藏连接我不确定哪些文件夹确实需要此类权限,但我记得1)SQL Server安装中的某些文件夹禁用了权限继承(至少在以前的版本中是这样),2)不仅仅是文件夹,还有很多注册表项和(可能)组策略也需要权限/成员资格。我刚刚发现了[this]()。和[文件]()。关键部分是这句话:SQLServer服务帐户必须能够访问资源。访问控制列表是为每个服务SID或本地Windows组设置的,因此本地帐户没有被分配任何文件夹权限权限-整个逻辑仍然取决于虚拟帐户及其链接到服务的方式。但是,当然还有其他东西和特权为我的本地帐户设置,例如允许运行为服务,等等。