我需要在三个ASP.NET应用程序和一个Delphi ISAPI应用程序之间开发“单点登录”身份验证。
方案的参与者:
其他信息/限制:
我目前的想法是使用AD或ADAM作为用户容器。使用表单身份验证并在ASP.NET应用程序之间共享成员资格提供程序(http://msdn.microsoft.com/en-us/library/eb0zx8fc.aspx)。模拟两个ASP.NET应用程序(http://stackoverflow.com/questions/1066275/impersonate-using-forms-authentication),然后从UI应用程序调用WS。
但是,我不知道如何在WS模块一侧传递(并重新获得)用户身份(凭证?)。这可能由IIS以某种方式处理(和ADAM?)可能他们将使用HTTP摘要或基本身份验证。我要感谢任何有关如何使这项工作的信息和建议。
答案 0 :(得分:0)
但是,我不知道如何传递(并重述)用户身份 (凭证?)没有WS模块的一面。
根据http://www.mombu.com/microsoft/microsoft/t-iis-60-single-sign-on-isapi-filter-14103802-last.html,在Platform SDK中有一个包含源代码的AuthFilter示例。
此解决方案似乎围绕身份验证Cookie 构建,可以在IIS服务器之间传递。
如果此单点登录示例可以应用于您的ISAPI应用程序,则应该可以将验证Cookie从ASP.NET传递到ISAPI端。
(我不是这方面的专家,这个建议是基于网络上的第一个研究结果。)