Um analista de TI pretende habilitar o mecanismo CORS para um site hospedado no servidor web nginx 1.18. O parâmetro correto a ser implantado no arquivo de configuração do site é:
- A)add_header Access-Control-Allow-Origin *;
Certa: adiciona o cabeçalho Access-Control-Allow-Origin, que é o principal para habilitar CORS.
- B)add_header Strict-Transport-Security "max-age=31536000; includeSubdomains";
Errada: HSTS força o uso de HTTPS, mas não libera requisições cross-origin.
- C)add_header Content-Security-Policy "default-src 'self' https: data: 'unsafe-inline' 'unsafe-eval';" always;
Errada: Content-Security-Policy controla fontes permitidas na página, não o compartilhamento CORS.
- D)add_header Cache-Control "max-age=0, no-cache, no-store, must-revalidate";
Errada: Cache-Control trata de armazenamento em cache, sem relação com CORS.
- E)add_header X-Frame-Options "SAMEORIGIN" always;
Errada: X-Frame-Options protege contra embed em iframe, não contra bloqueio de origem cruzada.
Gabarito: A
CORS (Cross-Origin Resource Sharing) é o mecanismo que permite que um site aceite requisições vindas de outra origem, algo comum quando front-end e API ficam em domínios diferentes. No nginx, isso costuma ser habilitado por meio de cabeçalhos HTTP adicionados na resposta, especialmente o Access-Control-Allow-Origin. Na prática, o navegador bloqueia acessos cross-origin por padrão por causa da política de mesma origem. Quando o servidor responde com o cabeçalho certo, ele autoriza quais origens podem consumir aquele conteúdo. Em configurações simples de laboratório, usar "*" libera qualquer origem, embora em ambiente real o ideal seja restringir aos domínios necessários. Por isso, a alternativa correta é a que insere o cabeçalho Access-Control-Allow-Origin com valor "*". No nginx, a diretiva add_header é justamente o caminho para adicionar cabeçalhos HTTP na resposta do site. As demais opções tratam de outros controles de segurança ou cache, como HSTS, CSP, cache-control e proteção contra clickjacking, mas não habilitam CORS. Ou seja: aqui a palavra-chave é "Access-Control-Allow-Origin"; o resto está só de carona.