0

本質的に、まさにタイトルが述べていること。これまでホワイトリストに登録したことがなく、どこから始めればよいかわかりません。宝石は必要ですか?助けてください

4

1 に答える 1

1

ホワイトリストは、プログラムへの入力が有効であるか、良いか悪いかをどのように見なすかに関する基本的なプログラミングの概念です。

ホワイトリスト:有効な条件を探して入力に対してチェックし、すべてが良好であれば続行します。すべてがうまくいかない限り、デフォルトでアクションを中止します。

ブラックリスト:不正な入力を探して入力をチェックし、そうであれば拒否します。その場合はエラーでアクションを中止し、そうでない場合はアクションを続行します。

可能な悪い入力の領域は無限であり、可能な良い入力の領域は有限です。

ホワイトリストはこのような入力をチェックします

if %w(some valid input).include?(params[:input])
  # proceed with action
else
  # not in whitelist, throw error
end

ブラックリスト: (これをしないでください)

if %(some invalid input).include?(params[:input])
  # throw error, detected invalid
else
  # proceed with action
end

可能な場合は、常にブラックリストの上にホワイトリスト ロジックを適用します。

于 2011-07-10T06:08:13.363 に答える