我仅限于对来自 javascript 应用程序的 API 请求使用 JSONP。
整个 javascript 应用程序将通过 SSL 托管。
由于我们在使用 JSONP 时仅限于 GET 请求,是否可以使用 GET 请求向 API 发送登录凭据(用户名/密码)?
我认为如果我们不使用 SSL 就不会是这样,但没关系,因为我们是。正确的?
谢谢!
是的,没有。如果您使用 SSL,那么无论使用哪种 http 方法,您的数据在传输中都是安全的。但是使用 POST 而不是 GET 可能会为 XSRF 类型的攻击增加一层保护(它没有,您需要某种形式的显式 XSRF 保护令牌,使用 POST 或使用 GET)。但是大多数登录表单不包含 XSRF 保护令牌,主要是因为这种类型的攻击旨在使用不知情用户的已经活动的登录会话。
因此,如果您不使用 ssl,那么 POST/GET 没有太大区别,而当您使用 SSL 时,没有任何变化,利用错误方法的攻击针对系统的其他部分/服务。您的密码/登录对与许多当前的网络应用程序一样安全。
PS您必须知道,根据您的http服务器的配置,您的密码可能会存储在日志文件中,转储带有参数的访问url。(IEEE遇到了这样的问题,他们使用get方法登录用户)。