【发布时间】:2011-03-17 19:22:10
【问题描述】:
我已竭尽全力寻找有关 .NET Remoting 的 IAuthorizeRemotingConnection 接口的任何有用信息,但我并没有真正找到任何有用的信息。
这里的问题并不是真正的“操作方法”,因为那里有很多示例,但问题是IsConnectingIdentityAuthorized 方法中的身份如何相互关联。
我们有一个 .NET 远程服务正在运行,并且最近将IAuthorizeRemotingConnection 接口添加到一个类中,然后远程服务使用该接口来验证身份。我遇到的问题是“我们在验证什么身份”?
我能够记录身份,因为它被传递到IAuthorizeRemotingConnection 方法,因为它是在我的本地系统上传递的。我可以看出身份是 MACHINE\ASPNET 用户。 Howeeer,在我们的开发服务器中,我们针对另一个开发 Web 服务器托管服务,我无法看到身份。
基本上,虽然远程服务调用了IsConnectingEndPointAuthorized 方法,并且我可以记录发生这种情况,但我从未看到调用了IsConnectingIdentityAuthorized。
这很奇怪,因为当我为本地系统使用相同的代码库时,它在开发环境中的工作方式不同。最令人沮丧的是,我无法分辨哪个身份正在尝试使用该服务,即使如此,我什至根本看不到用于验证身份的方法正在被调用。
我确实在 Web 应用程序日志中看到出现“登录被拒绝”消息的异常。我想知道我们是否在幕后以某种方式“预验证”,但失败了,所以我们甚至无法调用 IsConnectingIdentityAuthorized 方法。
谁有这方面的经验可以分享一下?
在您添加“使用 WCF”服务之前,我我计划这样做,但要完全实施还需要一段时间。我也有关于 WCF 的身份验证问题。不过,我也希望能够解决这个远程问题。
【问题讨论】:
-
您能否发布带有“登录被拒绝”消息的完整异常?
标签: .net security remoting endpoints