【问题标题】:how do i impersonate a windows authenticated web user over a .net remoting call?我如何通过 .net 远程调用模拟经过 Windows 身份验证的 Web 用户?
【发布时间】:2009-03-23 20:34:03
【问题描述】:

我有一个使用 Windows 集成安全性的 Web 应用程序。我还有一个作为本地系统运行的 Windows 服务。 Web 应用程序使用 .NET 远程处理通过 tcpip 通道在服务上执行方法。有没有办法在 .NET 2.0 上将 Windows 身份传递给服务?

【问题讨论】:

    标签: .net security remoting impersonation


    【解决方案1】:

    根据 MSDN 文档,配置客户端和服务器 app.config 文件。

    服务器:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <system.runtime.remoting>
            <application>
                <channels>
                  <channel ref="tcp" secure="true" impersonate="true" />
                 </channels>
            </application>
        </system.runtime.remoting>
    </configuration>
    

    客户:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <system.runtime.remoting>
            <application>
                <channels>
                  <channel ref="tcp" secure="true" tokenImpersonationLevel="impersonation"/>
                 </channels>
            </application>
        </system.runtime.remoting>
    </configuration>
    

    请注意,该属性对于服务器称为 impersonate 而对于客户端称为 tokenImpersonationLevel。

    见:http://msdn.microsoft.com/en-us/library/59hafwyt(VS.85).aspx

    【讨论】:

    • 我找到了相同的文档。但是,我仍然无法让通信从客户端工作到服务器。由于时间限制,实施了一个不太优雅的解决方案,我们直接将组(角色)传递给服务。
    猜你喜欢
    • 2018-05-12
    • 2013-10-27
    • 1970-01-01
    • 2016-10-17
    • 1970-01-01
    • 1970-01-01
    • 2017-09-11
    • 1970-01-01
    • 2019-05-05
    相关资源
    最近更新 更多