質問: ### 知りたいこと asp.netで「Web Forms」を使用しています。 前任者が作成したものを解析しています。不備があったら申し訳ありません。 認証でフォーム認証を使用していますが、各画面でSessionの値を確認していました。 フォーム認証の意味があるのかわからなかったので、この方法がスタンダードなのか教えてください。 フォーム認証しているのでセッションでのログイン確認は不要では?と思った次第です。 ### 該当のソースコード ``` '** ログインチェック ** If Not ChkSession(clsSession.USERNO) Then Call RedirectPage(HttpRootUrl) End If ``` ### 補足情報(言語/FW/ツール等のバージョンなど) asp.net 2005 (.NET framework2.0) SQL Server 2008 R2 IIS 7
回答: > > ご質問の認証はフォーム認証を使用していました。 しかし、各画面でSessionの値を確認していたので、フォーム認証の意味があるのかわからなかったので、この方法がスタンダードなのかを問合せしました。 > > > ASP.NET 標準の Forms 認証であれば Session は全く使ってないので関係ないです。 「各画面でSessionの値を確認」というのは Forms 認証とは別の話で、多分ページを遷移する際の情報のやり取りに使っているのではないかと思います。 とにかく、ASP.NET 標準の Forms 認証であれば Session は全く関係ないです。 > > セキュリティを考慮した定石が知りたいです。 > > > 認証チケットのやり取りに Cookie を利用する ASP.NET 標準の Forms 認証 + SSL が定石です。