我有一个使用 SQL Server 后端的 ASP.NET MVC 应用程序。但是,SQL Server 的身份验证方法是 SQL Server 身份验证,这意味着我需要询问用户密码才能通过我的应用程序连接到数据库。
理想情况下,我不想要求一次密码,为 session 建立从应用程序到数据库的永久连接,然后完全忘记密码,因为我想在需要时打开和关闭与数据库的连接执行数据库操作时。
但显然,我不想将他们的密码存储在 Session
中。对象,无论应用程序是否为 https
连接和面向内部,因为这是一个很大的禁忌。
在 session 期间保留密码的最安全方法是什么?
我无法更改身份验证方法,因为理想情况下我想使用 Windows 身份验证,但这是不可能的。
最佳答案
您有两种选择来解决此问题。
How to add claims in Asp.Net Identity
Adding Custom Claims when Logging In with Asp.Net Core Identity Cookie
How to store some custom data in form auth cookie
保存在身份验证 cookie 中的用户数据将被加密,可以轻松检索,并在注销或 session 到期后被丢弃。如果您的应用程序托管在与 session 变量不同的服务器场上,它也将是线程安全的。
关于c# - ASP.NET MVC - 如何安全地保留用户的密码以进行 SQL Server 身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62771560/