我有一个在“本地系统”帐户下运行的 SQL Express 2008 R2 实例。我已经编写了一个也在“本地系统”帐户下运行的 Windows 服务。 windows服务使用以下连接字符串连接到sql server。
Data Source=.\sqlexpress;Initial Catalog=mydatabase;Integrated Security=True
安装应用程序后,我使用一个简单的 SQL 脚本创建数据库,该脚本未设置任何权限或角色...它仅创建数据库和表。
作为“本地系统”运行的 Windows 服务如何设法访问数据库?它在 SQL 数据库中获得什么权利?它是如何获得这些权利的?
安德鲁
最佳答案
如果将 SSMS 中左侧的树(对象资源管理器)展开到安全,然后是登录,您将看到“NT AUTHORITY\SYSTEM”。默认情况下,安装 SQL Server 2008 R2 Express 后,此帐户会添加到 sysadmin
角色。
仅供引用 - 您的服务作为 Local System
+ Integrated Security 运行意味着它正在使用 SQL Server 作为 Windows 帐户 NT AUTHORITY\SYSTEM
进行身份验证。
http://msdn.microsoft.com/en-us/library/ms188659.aspx
sysadmin Members of the sysadmin fixed server role can perform any activity in the server.
关于sql-server-2008 - 在 SQL Express 2008 中访问未配置的数据库时,本地服务帐户默认具有哪些权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4939617/