我有一个工作REST
进行登录认证服务,希望我发的凭据text/html
,如果我给他们作为不起作用application/x-www-form-urlencoded
内容类型。
它是不太安全的把它们发送文字/ *(我假设它是)? 如何应用/ *使它更安全?
相关阅读: CAS REST API认证接受文本/ *而不是应用程序/ *内容类型
我有一个工作REST
进行登录认证服务,希望我发的凭据text/html
,如果我给他们作为不起作用application/x-www-form-urlencoded
内容类型。
它是不太安全的把它们发送文字/ *(我假设它是)? 如何应用/ *使它更安全?
相关阅读: CAS REST API认证接受文本/ *而不是应用程序/ *内容类型
这可能是CSRF保护的(弱)的形式。 跨域调用从Javascript与application/x-www-form-urlencoded
将使它的服务器是,这样一个攻击者可以通过发送AJAX请求从攻击者的域登录的用户。 然而,如果仅仅text/html
被接受,这样的请求触发预检OPTIONS请求首先如果跨域,浏览器将不发送实际的数据,如果服务器没有明确允许其与CORS标头。
因此,请求凭据作为API text/html
是略高于更安全的application/x-www-form-urlencoded
。 其他然后这一点,它不会对安全太大的影响。
(只有松散的联系,但请注意,内容类型确实有服务器响应一个重要的安全效果,但。JSON数据不必是HTML编码为JSON只是一种数据格式,并在客户端的Javascript应用程序可以而且应该决定如何渲染或编码下载的数据,但如果数据不JSON编码,任何JSON数据“页”,即所产生的JSON字符串,如果发送,本身是脆弱的XSS text/html
,因为浏览器将只呈现为HTML,运行任何JavaScript里面。所以JSON响应应该总是application/json
,在这种情况下,浏览器将不会运行它的JavaScript。)