Files
portal/app/tests/Feature/SecurityHeadersTest.php
T

30 lines
1.5 KiB
PHP

<?php
declare(strict_types=1);
/**
* Консолидация security-заголовков (18.06.2026): единый источник — nginx
* (/etc/nginx/sites-available/liderra, add_header ... always — CSP enforcing,
* X-Frame-Options, X-Content-Type-Options, Referrer-Policy, HSTS, Permissions-Policy,
* COOP/CORP). App-уровневый middleware SecurityHeaders удалён, чтобы не дублировать
* заголовки в ответе (на проде add_header always + PHP-заголовок = дубль).
*
* Этот тест фиксирует консолидацию: приложение само эти заголовки больше НЕ ставит.
* Бьём по публичному / (welcome SPA) — auth и БД не нужны.
*/
test('приложение НЕ ставит Content-Security-Policy-Report-Only (источник CSP — enforcing nginx)', function () {
$this->get('/')->assertHeaderMissing('Content-Security-Policy-Report-Only');
});
test('приложение НЕ дублирует X-Frame-Options (его ставит nginx)', function () {
$this->get('/')->assertHeaderMissing('X-Frame-Options');
});
test('приложение НЕ дублирует Referrer-Policy (его ставит nginx)', function () {
$this->get('/')->assertHeaderMissing('Referrer-Policy');
});
test('приложение НЕ дублирует X-Content-Type-Options (его ставит nginx)', function () {
$this->get('/')->assertHeaderMissing('X-Content-Type-Options');
});