Rails4 の Strong Parameters とバリデーション論争私的まとめ

9
前へ 1 ・・ 25 26 ・・ 54 次へ
Yoshida Mifumi 吉田 聖書 / プロジェクト オーガナイザ / ITコーディネータ @crosslaboratory

@ockeghem 興味を持って見守っていますが、もやもやしっぱなしです。個人的には区別する意味があるとは思えませんが。どういうエラーの時にどんな動きをするか自体が仕様ですし。

2013-07-20 00:13:24
徳丸 浩 @ockeghem

@crosslaboratory 大垣さんは、「セキュリティ対策」らしく、びしっと遮断することをしたいのだと思います。

2013-07-20 00:19:02
mura_waka@裸眼エンジニア @mura_waka

「入力ミス」と「入力バリデーションエラー」の違いに関する大垣さんと徳丸のやり取り http://t.co/3zZPnRKjpr

2013-07-20 00:40:45
早すぎる最適化オジサン @makotokuwata

“まず validation を「システムを健全(valid)な状態をたもつ仕組み」としてみよう。これが根本的な定義のはずだ。” http://t.co/miXj2rVImx そうかな。今回はリクエストパラメータのバリデーションだから、その定義だと範囲が広すぎるんじゃね?

2013-07-20 00:49:50
山崎良祐 / Ryosuke Yamazaki @nappa

@yohgaki そもそも「自由入力のメールアドレス」って何ですか? そんな言葉聞いたことないんですが……セキュリティの世界では普通なのでしょうか。世界的に。

2013-07-20 04:51:55
山崎良祐 / Ryosuke Yamazaki @nappa

説明する必要があるのか無いのかどっちですのん……??? http://t.co/9GS2VIa1DX

2013-07-20 05:38:45
Togetter(トゥギャッター) @togetter_jp

.@ockeghemさんの「「入力ミス」と「入力バリデーションエラー」の違いに関する大垣さんと徳丸のやり取り」に注目中!いますぐチェックしよう。 http://t.co/xH25i2VeCQ

2013-07-20 05:56:04
山崎良祐 / Ryosuke Yamazaki @nappa

やっぱり大垣氏は Strong Parameters のことをいっさい検証せずに招待講演でしゃべっちゃったんだと思う。だってそうじゃないとスライドの内容が大垣氏の日頃言ってることと辻褄が合わないもの。

2013-07-20 06:01:00
佐久間 功(編集/執筆)DM開放中🎣🚙🏕🛶🐟🚗📚 @Biz_Sakuma

一般の人に広く響かない「論理性を持った正しい話」は、「キャッチーな嘘」に拡散能力として負けてるんだってことは知っとかなアカン。正しいからわかってもらえるはず、通じるはず、なんてことはないのよ。

2013-07-20 09:30:34
yousukezan @yousukezan

なんであの人根拠なく断定して業界の偉い人なのかと思ったら出任せなのか。納得。

2013-07-20 09:39:52
Youhei Kondou @dw3w4at

ああやっぱり【入力ミス∩不正入力=∅】【エンドユーザも入力仕様知っているべき】という2大勘違いをしてないと、こういう莫迦はつげんできんわな https://t.co/nqIuNsPzym

2013-07-20 09:51:09
Youhei Kondou @dw3w4at

入力ミスと不正入力、どちらともとれる部分集合はあるし、なおかつ、エンドユーザがアプリケーション本体はまだしもそのシステム全部の入力仕様を知っているなんていう場面も無い。不可能な仮定を、それを2つも重ねて、他人には技術以外の反論をし、自分は一つも技術サンプルも示さない。典型的な糞。

2013-07-20 09:55:18
徳丸 浩 @ockeghem

iwamotのブログ : 「正しい入力」「あり得る入力」「あり得ない入力」の話 http://t.co/GcchwH109k

2013-07-20 09:55:38
リンク iwamotのブログ 「正しい入力」「あり得る入力」「あり得ない入力」の話 : iwamotのブログ メールアドレスとかの具体例を挙げていますが、一般論としては入力仕様が定義され、正しく理解していれば、自ずと「正しい入力」は定義できます。「正しい入力」以外がエラーとすべき物としかTwitter / yohgaki: メールアドレスとかの具体例を挙げていますが、一般論として
yousukezan @yousukezan

簡単なまとめ:メールアドレスでバリデーションエラーすべき物は簡単に書けます→書いてよ→メールアドレスはバリデーションが最も難しい→いいから書いてよ→簡単でしょ?→簡単なら書いてよ→これが難しいですか?

2013-07-20 09:59:30
徳丸 浩 @ockeghem

「あり得ない入力」について、例示の形でいくつか挙げてみますね。まず、文字エンコーディングのエラー、パーセントエンコーディングのエラー…これらは「入力間違い」では混入しない…

2013-07-20 09:59:46
Youhei Kondou @dw3w4at

あと RFC 5321 の章 2.3.11 に、普通に email address の仕様ありますよ。 RFC 5321 全体が SMTP の仕様で、その中にあると言う話。 SMTP仕様⊃EmailAddress仕様 ですな。

2013-07-20 09:59:51
徳丸 浩 @ockeghem

「あり得ない入力」続き、JavaScriptやinput要素のmaxlength等でチェックしているのに、そのチェックを突破している値…ただし、JavaScriptを無効にしているユーザをどうするかという問題は残る…

2013-07-20 10:01:17
Youhei Kondou @dw3w4at

ひょっとして、ミスと不正の積集合が思い浮かばなかったり、 SMTP仕様とEmailAddressの包含関係が思い浮かばなかったり、なんとかがきって集合演算が出来ないタイプの人?

2013-07-20 10:01:38
徳丸 浩 @ockeghem

「あり得ない入力」続き、セレクトボックスとかチェックボックス、ラジオボタンの選択肢にない値…

2013-07-20 10:02:02
徳丸 浩 @ockeghem

「あり得ない入力」続き、バリデートずみの値を保持するhiddenパラメータが仕様外の値になっている場合…くらいかな。まだあるかもしれないけど

2013-07-20 10:02:50
徳丸 浩 @ockeghem

「あり得ない値」を区別する目的は、「入力間違い」に対しては再入力を促すが、「あり得ない値」の場合は「攻撃」とみなして、ログアウト、遮断したいということだと思います…そんなサイト見たことないけど、気をつけて探せばあるかもしれない…WAFを導入している場合と区別がつきにくいと思う

2013-07-20 10:05:22
yousukezan @yousukezan

まとめ修正:メールアドレスでバリデーションエラーすべき物は簡単に書けます→書いてよ→仕様が不十分→RFC5321で→RFC5321はメールアドレス仕様ではない→書いてよ→メールアドレスはバリデーションが最も難しい→書いてよ→簡単でしょ?→簡単なら書いてよ→これが難しいですか?

2013-07-20 10:05:33
yousukezan @yousukezan

いいから黙って書けよ。簡単なんだろ?

2013-07-20 10:06:17
徳丸 浩 @ockeghem

「あり得ない値」を区別するデメリットは、実装が複雑になる(割にメリットがあまりない)ことでしょうね。だから、実装例を見かけない。大垣さんのご著書では、入力間違いも含めて全て「あり得ない値」として扱われている。(入力間違いという概念は、解説上も実装上も見あたらない)

2013-07-20 10:07:33
前へ 1 ・・ 25 26 ・・ 54 次へ