【发布时间】:2013-01-03 16:45:14
【问题描述】:
我需要允许用户通过我的 asp.net MVC 应用程序中的表单更改他们的密码。我的第一个想法是用 RequireHttps 属性装饰 ChangePassword 操作。
但是,在属性启动并返回“请求的资源只能通过 SSL 访问”之前,我仍然必须发送未加密的密码。这违背了目的,不是吗?
我确定我只是感到困惑,RequireHttps 很有用;我想知道是否有办法使用 RequireHttps 来实现我的目标。或者,我想知道任何其他方式来实现它。
更新:
由于下面的答案,我现在有了一些选择 - 我可以使用 https 在 iframe 中加载密码输入,这意味着来自它的任何帖子都将被加密。否则,我可以在构造帖子 url 的代码中将协议设置为 https:
var url = '@Url.Action("changePassword", "Security", new { area = "" }, "https")'
我不确定哪个更好,但我会尝试第二个 - 欢迎任何 cmets。
【问题讨论】:
-
确保该表单的所有链接都以 https:// 开头?
-
+1 @MichaelDunlap。只需要求您的网站从被用户点击的第一刻起就使用 HTTPS,然后不用担心安全或不安全的信息......您的用户可能会希望他们与您的网站的所有交互都能够通过您似乎正在尝试进行复杂的来回切换。
标签: asp.net-mvc security razor https custom-attributes