Asp.net mvc 如何在MVC4中安全地显示自动生成的密码?
我已经准备好了我的大部分MVC4web应用程序。我甚至开发了密码自动生成算法。现在我被困在如何向用户显示此密码的问题上 处理注册过程的控制器将通过调用Asp.net mvc 如何在MVC4中安全地显示自动生成的密码?,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 4,我已经准备好了我的大部分MVC4web应用程序。我甚至开发了密码自动生成算法。现在我被困在如何向用户显示此密码的问题上 处理注册过程的控制器将通过调用PasswordGenerator类中的方法来生成密码。我想使用一些jQuery在消息框中向用户显示这一点 我试着通过TempData和ViewBag传递它,但是可以在通过internet发送的HTML代码中看到密码。是否有任何方法可以在不通过internet显示密码的情况下安全地执行此操作 仅供参考,不可使用密码发送电子邮件。这是一个班级项目,不
PasswordGenerator
类中的方法来生成密码。我想使用一些jQuery在消息框中向用户显示这一点
我试着通过TempData
和ViewBag
传递它,但是可以在通过internet发送的HTML代码中看到密码。是否有任何方法可以在不通过internet显示密码的情况下安全地执行此操作
仅供参考,不可使用密码发送电子邮件。这是一个班级项目,不打算做那么大的事情
任何帮助都将不胜感激 对于初学者来说,jQuery、
TempData
或ViewBag
没有什么特别的地方对您有用。你通过互联网发送的任何东西都会通过互联网发送。如果攻击者控制了您用户的网络,那么他们可以截获javascript->WebApi调用或电子邮件,这与截获HTML页面一样简单
更一般地说,您应该了解安全性、可用性和开发成本之间的权衡。总的来说,没有“安全”这样的东西。有一些威胁您可以缓解,也有一些特定的攻击您可以而且应该防御,但也有一些风险您可以接受,这取决于您的服务的性质
那么,在这种情况下我们能做些什么:-
一个无关紧要的问题是:-,错误地存储密码可能会带来灾难。确保你做得正确根据您的经验,我强烈建议不要使用您自己的密码存储系统,除非您的评估员特别要求您使用。此外,让服务器生成密码供最终用户记住是一个相当有争议的问题。如果你没有被特别要求,你应该考虑它是否是正确的方法,并确保你证明了它的正确性。对于这种规模的东西,您可能希望研究某种联合身份验证(例如“使用您的google帐户登录”),而不是处理密码 当用户通过互联网访问你的网站时,你显然需要通过互联网向他发送任何你想显示的文本?我明白了。是否有任何隐藏字段或加密字段可用于此?这里的威胁模型是什么?您是否担心攻击者在传输过程中拦截消息,或者担心攻击者站在用户身后从屏幕上读取消息?@iaingallway,威胁是消息拦截。或者,从人们的粗心程度来判断,他们将电脑解锁,这样任何人都可以在他们不在的时候访问代码。我只是想小心一点。你永远不必担心从服务器发送到客户端的纯文本,它将以HTML格式显示。这里只有一件事是担心中间的攻击-意味着有人不是你想要的客户查看文本。相信我,这远远超出了你正在从事的课程项目的范围。那将是一个完全不同的班级