DCom配置 不能打开Guest用户(100分)

  • 主题发起人 主题发起人 Yong
  • 开始时间 开始时间
Y

Yong

Unregistered / Unconfirmed
GUEST, unregistred user!
看了很多以前的帖子,在配置Dcom的时候,出现“Interface not supported”,把Guest
打开就可以了,现在的问题是用户不想把Guest用户打开,这怎么呢?
 
控制面板->管理工具->组件服务

选择你的COM+应用程序,属性->标识->帐户
改为 此用户->键入一个有权限的用户并输入密码
 
我的是Dcom,应该用DComCNFG来配置吧?
 
呵呵, 添加帐户是做准备工作, 没有合适的帐户, 那么在DComCNFG中怎么指派合适的用户
呢. 不自己配置帐户, 只能指派一些系统默认的帐户, 这些帐户的权限不一定合你心意.

另外, “Interface not supported”,并不是添加Guest就解决的, 而是要给你指派的
用户(就比如说Guest)开放必要的权限, 否则嘛,客户端请求的东西, 服务器认为没有权限,
拒绝服务, 当然是"接口不支持"拉. 这个权限设置嘛, 我想你在DComCNFG中应该看到过
无数遍, 只是可能每次都从眼皮底下溜过去了. (不要放过那些"完全控制/特殊控制/"
这些字眼哦, 还要注意, 如果没有配置一个通用的好用的权限并设置为使用默认权限
则你做的设置每次只针对一个DCOM的ID, 而不是所有的ID)

呵呵, 你会马上成功的
 
现在的问题是,用户那里不想把Guest开放,否则服务器太容易被黑掉。而他们那里是没有
域服务器的,这就使得DCOM的权限问题变得很麻烦,我想在服务器里添加一个可以色使用
此COM的用户,然后在客户端的程序里用此用户和密码来连接DCOM的服务,要不就设置此
DCOM的服务为不需要安全验证,任何人都可以调用。
可就是不知道该怎么来写。有一个函数 CoInitializeSecurity 可能能够来设置,不知道
参数该如何写
 
不必使用Guest用户呀, 你只要将interactive(交互用户)的权限开放就可以了。其它
用户可以统统禁止掉。并且你还可以专门创建一个用户, 用户类型设置为interactive
(交互用户), 并将这个用户的各种权限精心设计一下, 让它只具有 你的程序所需要的
权限(只具有读写数据库的能力)。这样被黑的可能性大大减少。
关于函数 CoInitializeSecurity,这个嘛,听课先 :)
 
再次请教: 怎样将interactive(交互用户)的权限开放?
 
在DCOMCfg中, 在用户权限里, 用户名选interactive, 将不允许访问的改允许访问,特殊控制的改完全控制。 还要注意, 用户标识中不要用默认的启动用户, 要选交互式用户。

你上面的帖子很在意安全问题, 如果你安装了防火墙, 则DCOM不容易绕过。

还是吐血推荐你用ADO吧, 其方便性想必你知道, 而且根本不必配置操作系统用户, 只需
要给出数据库的用户、密码, 再给个主机地址或主机名, 或者Oracle的服务名即可。
这个应该对你的胃口。呵呵。
 
后退
顶部