在Outook Web-Add-In中保存密码的安全方法

时间:2017-11-22 11:27:07

标签: javascript security outlook-addin

我正在为Outlook 2016开发一个Web-Add-In。我想保存用户名和密码,因此用户不需要每次都填写这些数据。

如何通过JavaScript以安全的方式实现这一目标?代码片段是受欢迎的。

1 个答案:

答案 0 :(得分:0)

我想将您的问题分成两部分,如下所示......

  

我想保存用户名,因此用户无需每次都填写此数据。

Office.js API中有一个非常方便的对象:RoamingSettings。使用RoamingSettings对象的方法创建的设置将按加载项和每个用户保存。也就是说,它们仅适用于创建它们的加载项,并且只能从保存它们的用户邮箱中获得。基本上用户名是存储在此对象中的理想选择。

  

我想保存密码,因此用户无需每次都填写此数据。

RoamingSettings对象不应用于密码,令牌和其他身份验证数据。文件清楚地说明了以下内容......

虽然Outlook加载项API将对这些设置的访问权限仅限于创建它们的加载项,但这些设置不应被视为安全存储。可以通过Exchange Web服务或扩展MAPI访问它们。它们不应用于存储敏感信息,如用户凭据或安全令牌。

作为常识,将用户密码存储到不安全的商店是个坏主意。即使存储密码的哈希也不是很好,因为JavaScript代码非常暴露给客户端,并且用户密码可能会遭受字典攻击,因为您将无法隐藏您对JS的腌制/胡椒化。用户应每次都授权您的服务(加载项)。底线:不要将用户密码不安全地存储在邮箱中。