gpt4 book ai didi

c# - 确认密码发送到 Web Api 后端

转载 作者:太空宇宙 更新时间:2023-11-03 17:06:21 24 4
gpt4 key购买 nike

简单的问题。除了“密码”之外,我还应该将“ConfirmedPassword”发送到我的 WebApi 后端吗?

我正在使用 ASP.Net Core 2.1preview2,Web Api 由 Xamarin.Forms 客户端使用。我觉得我可以在 UI 客户端确认“Password”==“ConfirmedPassword”。

有谁知道这是否有任何我没有考虑到的缺陷?

最佳答案

是的,您应该将密码和确认密码都发送到服务器并在它们匹配的服务器上进行验证。即使这是对客户端正在执行的操作的冗余检查,也是如此。使用面向公众的 web api,所有业务逻辑都应在服务器端确认。所有的客户端验证都应该被认为是为了方便用户体验。

在设计 Web API 时,我发现考虑比当前客户端(通常是 Web 前端)更普遍的想法会更有帮助。如果您编写使用相同 Web API 的手机应用程序会怎样?甚至 Postman 也可以充当客户端。对于所有客户端,您要确认他们输入的密码是否匹配。

我查看了默认 VS 模板为您生成的默认 AccountController。它有一个 Register 端点,该端点采用 RegisterViewModel,它同时具有密码和 ConfirmPassword 字段。比较密码,如果不匹配则抛出错误。

最后,不通过这两个领域几乎没有任何收获。节省多少?包含少量字符和字符串比较的单个字段。

传递额外的值。始终进行服务器端验证。不要在那里走捷径,尤其是在安全方面。

关于c# - 确认密码发送到 Web Api 后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50651157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com