_ RESTとCSRF RESTの特性のサーバサイドステートレスという点にこだわりすぎると、CSRF自由自在となってしまう。というよりもどこからでも破壊的なメソッドを受け付けるようにしているのだから、CSRFではなく、単にそういうAPIだということだ。 それらのAPIの最初の時点で認証があれば、少なくともその操作を許可されているのだから(あるいは認証された領域外は許可されていないのだから)あまり考える必要はないと思う。 そうではなく、認証されていないクライアントが所定の遷移に従わなければ破壊的な操作を行えないようにするにはどうすれば良いのだろうか。 すると、HATEOASを使うということを思いつく。いきなり、POST/PUT/PATCH/DELETEできるというAPIでは無く、最初は必ずクライアントからのGETで始まるとする。そして各操作をeditリレーションのリンクで示す。たとえばGET