1月15日(月)1、2コマ目

今日、やったこと

サニタイジング

練習問題

今日のホワイトボード

サニタイジング

入力内容をそのまま出力するWebアプリケーションで

 <h3>コメント</h3>

と入力すると、見出しとして太文字で表示される。

出力時にHTMLのタグはそのまま出力せずに、<は&lt;に>は&gt;に置き換えて出力する必要がある。これがサニタイジング(無害化)。

図 サニタイジング

ソースコード

今日でやっと完成。全ソースコードをあげておきます。

[dtoパッケージ]Userクラス

ユーザー情報受け渡し用クラス。

[daoパッケージ]UserDAOクラス

ユーザーマスタテーブルアクセス用クラス。

[bllパッケージ]Serviceクラス

機能提供クラス。

[bllパッケージ]PasswordUtilクラス

パスワードハッシュ化。

[presentationパッケージ]IndexSrvクラス

1ページ目(ログインページ)用サーブレット。

[presentationパッケージ]UserInfoSrvクラス

2ページ目(ユーザー情報)用サーブレット。

[presentationパッケージ]AuthFilterクラス

認証済みかチェックするフィルタ。2ページ用サーブレット(UserInfoSrv)実行前に実行。

[exceptionパッケージ]NotFilledExceptionクラス

未入力項目がある際にスローする検査例外クラス。

[exceptionパッケージ]InvalidPasswordExceptionクラス

パスワード要件を満たさないときにスローする検査例外クラス。

[JSP]index.jsp

1ページ目(ログインページ)。

[JSP]userinfo.jsp

2ページ目(ユーザー情報)。

[JSP]error_500.jsp

HTTPのステータスコード500(サーバー内部エラー)返信時に表示するエラーページ。

[JSP]error_404.jsp

HTTPのステータスコード404(リクエストページがない)返信時に表示するエラーページ。

[設定ファイル]web.xml

エラーページの設定を行った。

DBのシーケンス

シーケンスは連続した番号を採番するためのオブジェクト。
図 シーケンス作成

シーケンスから採番

シーケンスから番号を取得することを”採番”と呼ぶ。
図 シーケンスから採番する
複数のクライアント(接続先)が同じシーケンスに採番しても、重複して採番することはない。

直近に採番した値を取得する

複数のクライアントが同じシーケンスから採番しても、クライアント毎に採番した値が管理されている。
図 直近に採番した値を取得する

次回は

きょうの練習問題の続き。
なお、今後は
  • Webアプリケーションのセキュリティの座学
  • テスト
を行う予定。このテストでセキュアプログラミングの評価を行う。今までにない一発勝負です。気をつけてください。





このブログの人気の投稿

1月12日(金)1、2コマ目

1月29日(月)3、4コマ目

1月9日(火)1、2コマ目