【问题标题】:Grant integrated security access rights for Microsoft SQL Server to LocalSystem account?将 Microsoft SQL Server 的集成安全访问权限授予 LocalSystem 帐户?
【发布时间】:2014-12-26 05:51:39
【问题描述】:

假设我的 Web 应用程序在 Windows 服务器上运行。它托管在 Tomcat 中,它作为 Windows 服务在帐户 LocalSystem 下运行。它访问远程 Windows 服务器上的 Microsoft SQL Server。我想让 Web 应用程序使用集成身份验证向 SQL Server 进行身份验证。

从对上一个问题的回答中,我知道如果 Tomcat 在<your-domain-name>\A1 帐户下运行,则以下 SQL 命令序列将启用集成身份验证。

CREATE LOGIN [<your-domain-name>\A1] FROM WINDOWS;
CREATE USER [<your-domain-name>\A1];
GRANT ... ON <object-name> TO [<your-domain-name>\A1];

向主机H1 上的Local Systemaccount 授予类似权限的正确 SQL 语法是什么?

【问题讨论】:

  • “LocalSystem”和“LOCAL SERVICE”是两个非常不同的帐户。
  • @RemusRusanu 我不是 Windows 人(不是 Tomcat 盒子的管理员:)如果 Tomcat(显然)以“LocalSystem”而不是“LOCAL SERVICE”运行,它会告诉我什么?
  • 您最初的标题引用了“本地服务”。对于这种情况,答案会非常不同,因为不允许LOCAL SERVICE 进行远程身份验证,而您只是 not 能够为其配置登录名(没有授予 ANONYMOUS LOGON 登录名,这是一个巨大的禁忌)。
  • @RemusRusanu 你是对的。标题被取消了。刚刚检查了Tomcat系统。它在 Windows 服务下显示“登录为:本地系统”。谢谢编辑。

标签: sql-server security authentication web-applications jdbc


【解决方案1】:

Local System 标识为本地网络上的计算机帐户。计算机帐户由带有$ 后缀的计算机名称标识。

因此,要从域 &lt;your-domain-name&gt; 上的主机 H1 为本地系统帐户创建登录名,您需要运行以下命令:

CREATE LOGIN [<your-domain-name>\H1$] FROM WINDOWS;

之后,您可以运行以下命令来授予此帐户的授权:

CREATE USER [<your-domain-name>\H1$] FOR LOGIN [<your-domain-name>\H1$];
GRANT ... ON <object-name> TO [<your-domain-name>\H1$];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    • 2013-09-25
    • 2018-02-23
    • 2011-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多