如何使用角度cors和nodejs隐藏登录名和密码

时间:2018-03-06 12:49:15

标签: angular cors httpclient

早上好,我需要一些帮助。

我正在开发一个应用程序来研究并尝试将来在公司中应用。我已经在iis上运行我的后端(nodejs api rest)并且我正在以角度4创建我的Web应用程序。问题是我正在进行我的身份验证屏幕,如果我使用wireshark之​​类的工具,我可以捕获登录名和密码

我该如何隐藏它?

login(login: string, senha: string): Observable<User> {
   const headers = new HttpHeaders();

   headers
     .append('Content-Type', 'application/x-www-form-urlencoded')
     .append('Accept', 'q=0.8;application/json;q=0.9');

   return this.http
              .post<User>(`${BASE_URL}/sign-in`, { username: login, password: senha }, {headers: headers, withCredentials: true})
              .do(user => (this.user = user));
}

如何使wireshark不显示用户和密码 wireshark

1 个答案:

答案 0 :(得分:1)

  

问题是我正在进行身份验证屏幕,如果我使用wireshark这样的工具,我可以捕获登录名和密码。

为避免这种情况,您希望使用 HTTPS 加密流量。这实际上是一个后端/操作问题,与Angular无关。

首先你需要一张证书。出于测试目的,这可以是您自己创建的自签名证书(例如with OpenSSL)。 然后,您必须正确设置后端(例如,使用Express,普通NodeJSIIS

如果必要,您必须应用于Angular代码的唯一更改是将 s 添加到硬编码网址(从http://example.comhttps://example.com)。< / p>