4

如果您正在构建一个自托管网页HttpListener,您如何以安全的方式处理身份验证?我不想使用基本身份验证,因为它将凭据作为明文传递。我知道摘要是另一种选择,

        listener = new HttpListener();
        listener.Prefixes.Add(url);
        listener.AuthenticationSchemes = AuthenticationSchemes.Digest; 
        listener.Start();

它是否足够安全,实际获取用户名/密码并对其进行身份验证的标准/最佳实践是什么?

在这种情况下,默认情况下没有 web.config 或托管环境。

4

2 回答 2

2

通过 HttpListener 使用身份验证意味着让 Windows 使用其内置的身份验证系统(即 ActiveDirectory)为您进行身份验证。这意味着对于摘要式身份验证,您需要为您的用户创建域帐户。这是你的本意吗?如果您想进行自己的自定义身份验证,那就更复杂了。除非你说那是你想做的,否则我不会讨论如何做到这一点。

于 2011-10-31T21:52:15.203 回答
1

我会考虑实现对基于声明的安全性的支持。您必须处理安全令牌,但实际的用户身份验证可以“外包”给外部身份提供者。

您可能可以利用 Windows Identity Foundation (WIF) 来处理大部分工作。

于 2011-10-28T18:28:08.037 回答