Jos*_*ons 0 sql-server delphi windows-authentication
我有一个使用Windows身份验证的Sql Server.
我想从Delphi应用程序连接到服务器.
默认情况下,SQL Server将采用启动连接过程的用户凭据.
这意味着要更改登录,我目前有两个选择:
注销并以所需用户身份登录,然后运行我的应用程序
使用RUNAS命令从命令行启动程序.
我想让用户在应用程序中提供凭据,并以该用户身份登录.这可能是通过操作ConnectionString还是以编程方式更改当前进程的用户来实现的?
我发现的最接近的是此条目,它告诉我如何在特定凭据下启动另一个进程.我可以使用该技术创建一个"启动器"程序,在从用户收集凭据后启动连接过程,但我真的想要更清洁的东西.
我正在使用Delphi 2010来完成这个项目.
谢谢
我认为结合LogonUser
然后ImpersonateLoggedOnUser
会为你做的伎俩.这应该更改当前进程正在运行的用户帐户.正如gbn所提到的,在更改登录凭据之前,您可能必须断开所有活动连接.