ASP.NET Core MVC で追加されたAutoValidateAntiforgeryToken属性が便利

はじめにCSRFありき

クロスサイトリクエストフォージェリ(Cross site request forgeries、CSRF)と呼ばれる脆弱性があります。
不正なリクエストを正規のものとして扱ってしまうという脆弱性です。

ASP.NET MVCでは、フォームに対するCSRF対策としてワンタイムトークン生成&検証機能が用意されています。

続きを読む

ASP.NET Core MVC と xUnit.NET でユニットテストを行う Part.2

DIに対してユニットテストを考える

前回で、ユニットテストの最低限の環境を整えました。

mrgchr.hatenablog.com

今回は、以前に利用したDIに対してテストを書いてみます。

mrgchr.hatenablog.com

続きを読む

ASP.NET Core MVC にて、Glimpseの代わりにPrefixプロファイラを試す

ASP.NETのプロファイラと言えばGlimpseが人気、だけど…

従来のASP.NET開発においては、Glimpseという強力なプロファイラがあり、人気があります。
私もずっと愛用してきて何度も助けられました。

が、このGlimpse、ASP.NET Core MVC対応がほとんど進んでいないようです。
(本記事執筆時点で次期バージョンの最終コミットが8月)

github.com

この辺りのアレコレは @neueさんのブログに詳しいことが書いてありました。

neue cc - LightNode 2 - OWINからASP.NET Coreへの移植実例

しょうがないので、別のプロファイラを探してみることにしましょう。世の中は思い通りにはなっていません。

続きを読む

ASP.NET Core MVC にて、StatusCodePagesMiddlewareを利用する

404ページの表示方法です。

ASP.NET Core MVCでは、コントローラーやアクションが見つからない場合は404 NotFoundのみが返ってくるようになりました。
従来(MVC5)では404と同時にサーバーエラーが表示されていました。

この変更はこれで良いのですが、ブラウザ上にはブランクページが表示されるようになりました。
f:id:mrgchr:20161026204945p:plain

開発者ツールを用いればステータスも分かることではあるのですが、開発時にもある程度分かりやすい表示ができると好ましいです。

というわけでStatusCodePagesMiddlewareを利用して404ページを表示します。

続きを読む

ASP.NET Core MVC と xUnit.NET でユニットテストを行う Part.0(準備編)

ユニットテストをしましょう

ASP.NET Core MVC では、推奨されるユニットテストフレームワークとしてxUnit.NETが採用されました。
さよならMSTest、いい奴だったよ。

続きを読む