요청의 내부 인증을 사용하는 백엔드 앱을 작성 중이므로 실제 사용자에게 노출되는 양식 수가 적은 것을 제외하면 CSRF는 필요하지 않습니다.symfony 2 csrf selective enable?
config.yml에서 CSRF를 비활성화했지만 특정 양식에 대해 활성화하려고합니다. 문서에 따르면,이 트릭을해야합니다 :
public function setDefaultOptions(OptionsResolverInterface $resolver) {
$resolver->setDefaults(array(
// FIXME: this doesn't work, I still don't get CSRF ?
'csrf_protection' => true,
'csrf_field_name' => '_token',
));
}
하지만 난,이 양식에 CSRF 토큰을 얻을하지 않습니다. 내 나뭇 가지 파일은 다음과 같이 말합니다 :
<form action="{{ path('mypath') }}" method="post" {{ form_enctype(form) }}>
{{ form_widget(form) }}
<button name="submit">{{ 'register.submit'|trans }}</button>
</form>
그래야 작동합니다. 뭐가 문제 야?
당신이 나뭇 가지 파일을 게시 할 수 있을까요? 일반적으로 CSRF가 빠져 있습니다. 폼 템플릿에서 기본 폼 동작'{{form_widget (form)}}을 사용하지 않기로 결정한 경우 위의 추가 된 토큰 –
을 얻기 위해'{{form_rest (form)}} '을 넣어야하기 때문입니다. 나는 기본값을 사용한다. – Tom
Symfony의 어떤 버전을 사용합니까? – nni6