计算机的安全问题来自,来自服务的CreateProcessAsUser存在访问远程计算机的安全问题...

我试图使用本地(远程)数据库与服务器上的集中统一数据库(使用Sybase数据库)进行同步。同步必须在预定的时间发生,我正在使用“CreateProcessByUser”。要启动同步过程,我正在使用由sybase提供的dbremote.exe。来自服务的CreateProcessAsUser存在访问远程计算机的安全问题

所构造的命令行参数是:

COMMANDLINE =则Dbremote.exe -l 512K -x -k -c“DSN = HOME * * ; UID = DBA; PWD = ***; CS =无; DBKEY = ***” -OS千万-o “C:\数据\测试\ dbremote.log” “C:\数据\测试”

BOOL startA_Process(HANDLE hToken, _TCHAR *commandLine, PROCESS_INFORMATION *pi, BOOL wait, _TCHAR *errBuf){

STARTUPINFO sStartupInfo;

DWORD dwExitCode;

DWORD dwStatus = 0;

DWORD dwCreationFlags = CREATE_NEW_CONSOLE;

int iResult;

BOOL bInheritHandles = FALSE;

LPCTSTR pszApplicationName = NULL;

LPCTSTR pszCurrentDirectory = NULL;

LPVOID pvEnvironment = NULL;

LPSECURITY_ATTRIBUTES psProcessAttributes = NULL;

LPSECURITY_ATTRIBUTES psThreadAttributes = NULL;

//

// Initilize STARTUPINFO structure

//

ZeroMemory(&sStartupInfo, sizeof(sStartupInfo));

sStartupInfo.cb = sizeof(sStartupInfo);

sStartupInfo.lpTitle = _T("AutoSychDBRemote");

sStartupInfo.lpDesktop = _T("winsta0\\default");

//

// Initilize PROCESS_INFORMATION structure

//

ZeroMemory(pi, sizeof(PROCESS_INFORMATION));

iResult = ::CreateProcessAsUser(

hToken, // handle to a token representing the logged-on user

pszApplicationName, // name of executable module

(LPTSTR)commandLine, // command line string

psProcessAttributes, // process security attributes

psThreadAttributes, // thread security attributes

bInheritHandles, // whether new process inherits handles

dwCreationFlags, // creation flags

pvEnvironment, // pointer to new environment block

pszCurrentDirectory, // pointer to current directory name

&sStartupInfo, // pointer to STARTUPINFO

pi // pointer to PROCESS_INFORMATION

);

该过程在远程计算机上执行,并当发生同步时,应在远程数据库和统一数据库之间交换消息。

如果我从Windows命令提示符执行上述命令行,同步工作成功。但是,当通过CreateProcessAsUser在预定的时间触发我在日志文件中看到以下错误信息:

日志文件:

一2013-04-11 11点17分十一秒。发送信息到“BTI”

I. 2013-04-11 11:17:11。 sopen“\\ IP地址\数据库\生产\消息\合并\ Rem00005.g” 失败1326:无效的参数

I. 2013-04-11 11:17:11。 sopen“\\ IP地址\数据库\生产\消息\合并\ Rem00005.h” 失败1326:无效的参数

I. 2013-04-11 11:17:13。 sopen“\\ IP地址\数据库\生产\消息\合并\ Rem00005.i” 失败1326:无效参数

I. 2013-04-11 11:17:13。 sopen“\\ IP地址\数据库\生产\消息\合并\ Rem00005.j” 失败1326:无效参数

I. 2013-04-11 11:17:13。 sopen“\\ IP地址\数据库\生产\消息\合并\ Rem00005.k” 失败1326:无效参数

E. 2013-04-11 11:17:13。发送消息时出错

I. 2013-04-11 11:17:13。重新发送请求正在排队

I. 2013-04-11 11:17:14。执行完毕

其中“\\ IP地址\数据库\生产\邮件\抗疏力”是我请求您对此的帮助,其中来自远程计算机的消息会被复制

服务器上的文件夹中。为什么我能够从命令提示符与为什么不从'CreateProcessAsUser'进行同步?为什么该进程无法将消息发送到服务器上的上述路径。

,我已经试过几件事情:

我现在用的是:: LogonUser的记录,在使用我的Windows域名和凭据的应用程序,并在()的代码。我有双重检查,我发送有效的凭据。

使用资源管理器,我可以成功导航到服务器上的上述路径,并可以添加/删除文件。

我已将我的用户标识添加到管理工具>>本地安全策略下的“本地安全设置”。

任何建议表示赞赏。

2013-04-11

Hemanth

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值