如果要围绕HttpListener
构建自托管网页,您如何以安全的方式处理身份验证?我不想使用基本身份验证,因为它将凭据作为明文传递。我知道摘要是另一种选择,
listener = new HttpListener();
listener.Prefixes.Add(url);
listener.AuthenticationSchemes = AuthenticationSchemes.Digest;
listener.Start();
它是否足够安全以及实际获取用户名/密码并对其进行身份验证的标准/最佳做法是什么?
在这种情况下,默认情况下没有web.config或托管环境。
答案 0 :(得分:2)
使用HttpListener进行身份验证意味着让Windows使用其内置身份验证系统(即ActiveDirectory)为您进行身份验证。这意味着,对于摘要式身份验证,您需要为用户创建域帐户。这是你想要的吗?如果您想进行自己的自定义身份验证,那就更复杂了。除非你说那是你想要做的事情,否则我不会讨论如何做到这一点。
答案 1 :(得分:1)
我会考虑实施对基于索赔的安全性的支持。您必须处理安全令牌,但实际的用户身份验证可以“外包”给外部身份提供商。
您可能可以利用Windows Identity Foundation(WIF)来处理大部分工作。