- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个稍微复杂的设置,当然,它在 XP 中运行良好,但在 Windows 7 上却无法正常工作。这看起来很疯狂,但在当时是有道理的!
我有一个 WPF 应用程序启动,然后启动另一个与外部设备通信的应用程序。启动后,它使用 WCF(由新进程托管)通过命名管道 (net.pipe) 与新进程建立通信。这似乎在任何一个操作系统上都能正常工作。
我想让 WPF 应用程序的某些功能在外部可供命令行程序使用,因此我设置了另一个 WCF 服务,这次由 WPF 应用程序托管,并再次通过命名管道公开它。同样,这似乎有效。
接下来,我想通过 Web 提供 WPF 应用程序的功能。现在,重要的是 WPF 应用程序可以从普通用户帐户运行,所以我认为在 Windows 7 上进行这项工作的最佳方法是创建一个提供 Web 服务部分的 Windows 服务,并让它与通过适用于命令行的相同命名管道的 WPF 应用程序。我实现了它,它在 XP 上运行良好,但在 Windows 7 上却无法运行。问题似乎与尝试在 Windows 服务和 WPF 应用程序之间建立命名管道连接有关。
如果我以管理员身份运行 WPF 应用程序,它工作正常。因此,运行 Windows 服务的帐户似乎存在问题,无法与通过命名管道托管 WCF 服务的常规用户帐户进行通信。有没有办法使这项工作?在普通用户帐户中运行的 WCF 服务似乎可以使用命名管道与在同一帐户中运行的另一个应用程序进行通信,但它似乎无法通过不同的帐户执行相同的操作。
奇怪的是,反过来似乎也行得通。事实上,windows 服务也公开了一个带有命名管道绑定(bind)的服务(它被用作激活函数,因为该服务一直在运行)。我可以毫无问题地从 WPF 应用程序连接到此服务。
我的安全知识有限。任何人都可以阐明正在发生的事情吗?
最佳答案
这个问题之前已经在 SO 上被问过好几次了。例如,参见 Connecting via named pipe from windows service to desktop app
问题是您的用户 session 应用程序不拥有必要的 SeCreateGlobalPrivilege 安全权限,以允许它们在对其他 session 可见的全局内核 namespace 中创建对象,而只能在仅在 session 中可见的本地 namespace 中创建对象。另一方面,默认情况下使用此权限运行的服务可以这样做。
以这种方式约束到本地命名空间的不是命名管道对象本身,而是另一个命名内核对象,一个共享内存部分,WCF 命名管道绑定(bind)依赖于它以向其客户端发布实际的管道的名称,这是一个 GUID,每次启动服务时都会更改。
您可以通过颠倒角色来绕过此约束 - 将 Windows 服务应用程序设为 WCF 服务,您的用户 session 应用程序将连接到该服务。 Windows 服务将其服务发布到您的 session 没有问题。以这种方式连接起来更有意义,因为 Windows 服务始终在运行,而您的 session 及其应用程序会随着您的登录和注销而出现和消失。您需要使用双工协定定义服务,以便一旦建立连接,WCF 服务上的基本通信流仍然可以按照您最初预期的方向进行。
关于命名管道的 WCF 安全问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10300487/
我正在学习 Spring 安全性,但我对它的灵活性感到困惑.. 我知道我可以通过在标签中定义规则来保护网址 然后我看到有一个@secure 注释可以保护方法。 然后还有其他注释来保护域(或 POJO)
假设有一个 key 加密 key 位于内存中并且未写入文件或数据库... byte[] kek = new byte[32]; secureRandom.nextBytes(kek); byte[]
我有 Spring Security 3.2.0 RC1 的问题 我正在使用标签来连接我 这表示“方法‘setF
我正在创建一个使用 Node Js 服务器 API 的 Flutter 应用程序。对于授权,我决定将 JWT 与私钥/公钥一起使用。服务器和移动客户端之间的通信使用 HTTPS。 Flutter 应用
在过去的几年里,我一直在使用范围从 Raphael.js 的 javascript 库。至 D3 ,我已经为自己的教育操纵了来自网络各地的动画。我已经从各种 git 存储库下载了 js 脚本,例如 s
在 python 中实现身份验证的好方法是什么?已经存在的东西也很好。我需要它通过不受信任的网络连接进行身份验证。它不需要太高级,只要足以安全地获取通用密码即可。我查看了 ssl 模块。但那个模块让我
我正在尝试学习“如何在 Hadoop 中实现 Kerberos?”我已经看过这个文档 https://issues.apache.org/jira/browse/HADOOP-4487我还了解了基本的
我有一个带有 apache2、php、mysql 的生产服务器。我现在只有一个站点 (mysite.com) 作为虚拟主机。我想把 phpmyadmin、webalizer 和 webmin 放在那里
前些天在网上看到防火墙软件OPNsense,对其有了兴趣,以前写过一个其前面的一个软件M0n0wall( 关于m0n0wa
我在 Spring Boot 和 oauth2(由 Google 提供)上编写了 rest 后端,在 "/login" 上自动重定向。除了 web 的 oauth 之外,我还想在移动后端进行 Fire
我想调用类 Foo,它的构造函数中有抽象类 Base。我希望能够从派生自 Base 的 Derived 调用 Foo 并使用 Derived覆盖方法而不是 Base 的方法。 我只能按照指示使用原始指
如何提高 session 的安全性? $this->session->userdata('userid') 我一直在为我的 ajax 调用扔掉这个小坏蛋。有些情况我没有。然后我想,使用 DOM 中的
我目前正在为某些人提供程序集编译服务。他们可以在在线编辑器中输入汇编代码并进行编译。然后编译它时,代码通过ajax请求发送到我的服务器,编译并返回程序的输出。 但是,我想知道我可以做些什么来防止对服务
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
目前,我通过将 session 中的 key 与 MySQl 数据库中的相同 key 相匹配来验证用户 session 。我使用随机数重新生成 session ,该随机数在每个页面加载时都受 MD5
Microsoft 模式与实践团队提供了一个很棒的 pdf,称为:“构建安全的 asp.net 应用程序”。 microsoft pdf 由于它是为 .Net 1.0 编写的,所以现在有点旧了。有谁知
在 Lua 中,通常会使用 math.random 生成随机值和/或字符串。 & math.randomseed , 其中 os.time用于 math.randomseed . 然而,这种方法有一个
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我们有一个严重依赖 Ajax 的应用程序。确保对服务器端脚本的请求不是通过独立程序而是通过坐在浏览器上的实际用户的好方法是什么 最佳答案 真的没有。 通过浏览器发送的任何请求都可以由独立程序伪造。 归
我正在寻找使用 WebSockets 与我们的服务器通信来实现 web (angular) 和 iPhone 应用程序。在过去使用 HTTP 请求时,我们使用请求数据、url、时间戳等的哈希值来验证和
我是一名优秀的程序员,十分优秀!