为了账号安全,请及时绑定邮箱和手机立即绑定

如何处理登录 ASP.NET Core 中 SMTP 客户端的密码存储?

如何处理登录 ASP.NET Core 中 SMTP 客户端的密码存储?

C#
冉冉说 2023-07-22 18:14:29
我目前正在开发一个 ASP.NET Core 应用程序,其中一部分是“电子邮件服务”,现在,它唯一的功能是通过发送信息电子邮件。SMTP,但是使用客户端自己的凭据。我非常不确定应该如何处理这些凭据的存储,要启用 SMTP,它需要:服务器地址港口邮件地址密码我想除了密码之外的所有内容都可以安全地存储在数据库中,但是我该如何存储密码呢?(数据库不存储在同一台计算机上,如果这会产生任何差异)
查看完整描述

1 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超6个赞

如前所述,有多种方法可以处理此问题。


我选择的解决方案是使用 .NET Core 内置的东西,通过对服务集合Microsoft.AspNetCore.DataProtection进行操作,以便可以通过 DI 访问它。.AddDataProtection()


这是在控制器中通过以下方式完成的:


private IDataProtector myProtector;


public Mycontroller(IDataProtectionProvider provider)

{

    this.myProtector = provider.CreateProtector("myPurpose");


    var encryptedString = this.myProtector.Protect("somestring");


    var decryptedstring = this.myProtector.Unprotect(encryptedString);


}

它支持许多不同的密钥配置,我建议将其与 .NET Core 一起使用。


查看完整回答
反对 回复 2023-07-22
  • 1 回答
  • 0 关注
  • 74 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信