Bon... Un peu de lecture. Le protect_from_forgery permet d'éviter les attaques CSRF : http://en.wikipedia.org/wiki/Cross-site_request_forgery
Ce qui veut juste dire que Rails va checker que le bon token est envoyé avec le formulaire. Ce token est spécifique à la session de l'utilisateur en cours. Donc rien n'empêche un utilisateur mal intentionné d'essayer de modifier en local par exemple un formulaire (ou de forger une réponse post avec curl ou n'importe) de ton appli tout en gardant le token CSRF de sa session et de rajouter un champ user[admin]=true. Donc oui, la protection CSRF ne protège pas du mass-assignment. Capice ? Nicolas. 2011/4/26 alternative451 <[email protected]>: > Et bien, me semble il, pour faire du mass assignement il faut faire un > faut formulaire, qui reprend les champs du formulaire a biaiser, plus > des champs tels que "admin = true" mais le protect from forgery > empêche de créer un faut formulaire, je me trompe ? > > On 26 avr, 16:38, Salim <[email protected]> wrote: >> J'ai du mal à voir le rapport entre le protect_from_forgery et le mass >> assignement, mais je passe peut-être à côté d'un truc... >> >> On 26 avr, 16:29, alternative451 <[email protected]> wrote: >> >> >> >> >> >> >> >> > Bonjour, je suis tombé sur quelques cours et notions de sécurisation >> > d'api rails, et le mass assignement me parait impossible a pratiquer a >> > cause du protect_from_forgery. en effet, il est impossible de créer >> > une requette de façon externe sans se faire jeter par une erreur 422. > > -- > Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de > Google Groups. > Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse > [email protected] > Pour résilier votre abonnement envoyez un e-mail à l'adresse > [email protected] -- Nicolas Blanco, Web developper http://www.nicolasblanco.fr Jabber/GoogleTalk : [email protected] Twitter : http://twitter.com/slainer68 Github : http://github.com/slainer68 Skype : slainer68 -- Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement envoyez un e-mail à l'adresse [email protected]
