Режим Rails 5.2 API глотает заголовки безопасности по умолчанию? - PullRequest
1 голос
/ 06 мая 2019

Если я вывожу config.action_dispatch.default_headers в моем application.rb, я вижу все стандартные заголовки рельсов :

{"X-Frame-Options"=>"SAMEORIGIN", "X-XSS-Protection"=>"1; mode=block", "X-Content-Type-Options"=>"nosniff", "X-Download-Options"=>"noopen", "X-Permitted-Cross-Domain-Policies"=>"none", "Referrer-Policy"=>"strict-origin-when-cross-origin"}

Однако, если я сделаю запросв моем приложении (с помощью curl / browser / postman) я не вижу ничего из вышеперечисленного.Я вижу только следующее:

$  curl -v -XGET 'localhost:4000/myresource/581'
* TCP_NODELAY set
* Connected to localhost (::1) port 4000 (#0)
> GET /myresource/581 HTTP/1.1
> Host: localhost:4000
> User-Agent: curl/7.54.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: application/json; charset=utf-8
< ETag: W/"292a7d87b10e292374e765dd0b56fee7"
< Cache-Control: max-age=0, private, must-revalidate
< X-Request-Id: 7ff75ff6-f598-4489-9439-a4c17c6a5480
< X-Runtime: 0.025049
< Transfer-Encoding: chunked
<

Это все работает локально без веб-сервера / прокси.В работе мне не хватает тех же заголовков.

Удаляет ли режим Rails API заголовки, которые, по его мнению, не имеют отношения к API?Или это может быть только какой-то другой код в моем приложении, который делает это?

1 Ответ

2 голосов
/ 06 мая 2019

Rails 5.x в режиме API не включает заголовки ActionDispatch по умолчанию.

Это проблема: https://github.com/rails/rails/issues/34940.

Но это исправлено и будет доступно в версии 6.0.0: https://github.com/rails/rails/pull/32484

...