2010-06-02 6 views
29

, 나는 이런 식으로 뭔가를 할 수있는 사용자 주어진 값에 의해 찾아 (아포스트로피 탈출 등) SQL 주입을 방지하려면 :Rails SQL injection? 레일에서

Post.all(:conditions => ['title = ?', params[:title]]) 

나는 알고이 일을 안전하지 않은 방법 (가능한 SQL 인젝션)은 다음과 같습니다.

제 질문은 다음과 같은 방법으로 SQL 삽입을 방지 할 수 있습니까?

Post.all(:conditions => {:title => params[:title]}) 

답변

37

예. 두 번째 것만 위험합니다.

+0

직접 응답 해 주셔서 감사합니다. –

5

+1 @fphilipe 및 railscast에서이 5 분 비디오와 RoR에 가이드에서 rails guide

+0

고마워, 나는 이것을 이미 보았다. 그러나 그것은 내 질문을 다루지 않는다. (마지막 발견에 관한 것이다.) –