繁体   English   中英

由匿名用户执行的远程PowerShell脚本

[英]remote powershell script executed by anonymous user

我们正在使用pstrami运行部署脚本。 部署部分是执行数据库迁移。 迁移使用具有集成安全性的连接字符串。

当脚本在远程计算机上执行时,迁移失败,并显示sql错误,指出用户'NT AUTHORITY \\ ANONYMOUS LOGON'登录失败

执行脚本的人是域管理员。 我们运行的其他部署与启动该进程的用户执行远程脚本。

问题是凭据不会跳转到SQL Server以实现集成安全性。 您需要执行以下操作:

在服务器(进行SQL Server连接的服务器上,以管理员身份运行:

Enable-WSManCredSSP -Role server

在客户端计算机上,以管理员身份运行:

Enable-WSManCredSSP -Role client -DelegateComputer YOUR_SERVER_NAME

要将其打开到所有服务器,您可以运行:

Enable-WSManCredSSP -Role client -DelegateComputer *

最后,您的invoke命令确保您运行-authentication credssp。 一个例子:

invoke-command -computername $remoteServer -authentication credssp -scriptblock { write-host "hello!" } -credential $credentials

这是场景:
您从desktopA运行pstrami(部署)脚本。 该脚本将您的安装文件推送到serverA。 然后在serverA上,脚本作为从desktopA启动脚本的人远程运行。 其中一个步骤是使用连接字符串参数使用“集成安全性”运行带有fluentmigrator的sql数据库upate,数据库位于serverB上。

连接字符串示例:

$migration_db_connection = Data Source=serverB;Initial Catalog=PropertyDb;Integrated Security=SSPI; 
.\migrate.exe /conn "$migration_db_connection" /db SqlServer /a $migration_assembly /profile DEBUG

Pstrami使用powershell命令invoke-command,该命令使用您正在运行该脚本的帐户作为默认用户。 因此,当您从desktopA以“jonDoe”运行脚本时,它会在serverA上进行身份验证。 所以你的pstrami脚本在serverA上的“jonDoe”下运行。 当您在serverA上执行fluentmigrator脚本为“jonDoe”时,fluentmigrator会为用户“NT AUTHORITY \\ ANONYMOUS LOGON”返回错误登录失败。 在IIS中,当您需要从IIS服务器访问另一个资源并且发生某些相当常见的情况时,您会遇到一个有趣的情况。 使用集成安全性时,将禁用匿名访问,并启用模拟, Windows安全措施会启动,并且不允许您的站点访问任何网络服务器上的资源。 http://weblogs.asp.net/owscott/archive/2008/08/22/iis-windows-authentication-and-the-double-hop-issue.aspx

这就是我遇到Windows身份验证和遇到的双跳问题的方法。 直接在sql数据库服务器上运行迁移脚本,并将其作为服务器目标包含在pstrami环境中。

例:

Environment "dev" -servers @(
    Server "serverA" @("InstallWeb") 
    Server "serverB" @("RunMigrations")
    ) 

更多关于Double Hop

我无法对您的问题发表评论并将其作为答案发布。 我稍后会更新。

这可能是由于SQL Server没有您的Windows登录帐户的登录帐户。 如果这是问题,请将登录用户添加到远程计算机中的SQL Server。

如果已经解决了这个问题,那么您可以选择将权限作为DB_Owner提供给SQL Server上的“NT AUTHORITY \\ ANONYMOUS LOGON”以及您正在使用的特定数据库。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM