我正在为客户开发一个PHP邮件客户端,他们希望能够从这个客户端处理所有不同的电子邮件帐户。
用户不应该在每次想要使用该服务时都键入所有密码,这就是我的问题。有没有办法在不输入邮件帐户密码的情况下通过Gmail检索和发送邮件?还有其他方法吗?还是我必须使用某种加密将密码保存在数据库中并使用"隐藏"密钥对其进行解密?
https://developers.google.com/google-apps/gmail/阅读OAuth部分。
OAuth 为您提供令牌,而不是密码。即使用户更改了他的gmail密码,该令牌也允许您访问他的收件箱等。
至于Hotmail...可悲的是,我认为没有OAuth API。
阅读此内容以防万一:http://msdn.microsoft.com/en-us/library/live/hh826535
使用电子邮件服务器进行身份验证需要您传递密码,因此您对将其存储在应用程序数据库中的加密和解密机制(密码)是正确的。如果有人获取您的数据,这将防止电子邮件密码可读,但您需要小心应用程序如何存储要解密的密钥。以下是 PHP 中用于密码的一些扩展 http://www.php.net/manual/en/refs.crypto.php