ASP.NET Core
外に公開する Web アプリなら、ASP.NET Core Identity や JWT Bearer 認証を採用するんだけど、社内で使う用だとユーザー管理がめんどい。Windows 認証の方が都合がいい。クライアントはほぼ全て Windows だし、Active Directory で管理してるからなおさら。…
ASP.NET Core 用の GraphQL Server を使うことで、 ASP.NET Core プロジェクトに GraphQL API を実装するのが楽になりそうだった。 tnakamura.hatenablog.com ただ、ASP.NET Core MVC でエンドポイントを自作する必要はなくなるけど、resolver は依然書く必…
ASP.NET Core MVC を使って GraphQL API のエンドポイントを実装してきたけど、ASP.NET Core 用の GraphQL Server 実装が存在することを今更知った。 www.nuget.org 気分は某CMの松重豊。「それさぁ、早くいってよぉ~」って感じだ。 いやまぁ、ちゃんと調べ…
以前、ASP.NET Core で GraphQL API のサンプルを実装してみた。 tnakamura.hatenablog.com 当時必要だったのはクエリだけだったので、ミューテーションは後回しにしていたけど、 とうとうミューテーションが必要になってしまった。 真面目に GraphQL API を…
先日 ASP.NET Core で GraphQL API を実装してみた。 tnakamura.hatenablog.com データベースから Entity Framework Core を使ってデータを取得する部分は自前で書いたわけだが、なかなか面倒だったのでなんとかしたいところ。 例えば Ruby だと graphql-rub…
GraphQL API が必要になったので、ASP.NET Core で実装できるか試してみた。ライブラリは現状 GraphQL 一択。 www.nuget.org GraphiQL っていう、GraphQL を試すのに便利な Web UI があるので、それも利用した。ASP.NET Core のミドルウェアを使えば組み込む…
例えば、はてなブログのカスタム URL みたいな、entry/ 以下にすべてマッチするルートを定義する場合、ASP.NET Core MVC だと下記のように書く。 [HttpGet("entry/{*path}")] public async Task<IActionResult> Details(string path) { // IIS Express は %2F を / に戻して</iactionresult>…
はじめに 外部に公開する REST API の認証・認可に OpenID Connect を選択した場合、ASP.NET Core での実装には IdentityServer4 を使うことになると思う。IdentityServer4 は認証のバックエンドに ASP.NET Core Identity をサポートしているので、新規の開…
はじめに 以前 WCF と gRPC のベンチマークを比較して、結果 gRPC の圧勝だった。 tnakamura.hatenablog.com ASP.NET Core MVC(Web API) と WCF ではどっちが速いか気になったので試してみた。WCF のサービスは今のところ .NET Framework で動かすしかないの…
開発中の Web API に後から Swashbuckle.AspNetCore を追加したはいいけど、いざ Swagger UI を表示してみたら「Failed to load API definition」というエラーになって API 一覧が見れない。こんな感じのやつ。 このエラーに遭遇したら、ググる前にまず swag…
以前、JwtBearer Authentication の裏で ASP.NET Core Identity を使うことには成功した。 tnakamura.hatenablog.com ASP.NET Core Identity は 2 要素認証をサポートしているので、 JwtBearer Authentication を使う場合でもなんとか組み合わせることができ…
認証に ASP.NET Core Identity を使うけど、アプリ向けに JwtBearer の認証もサポートしたい。JwtBearer でトークンを発行するときは、ユーザーを認証するコードを書くことになるわけなので、そこで Identity の SignInManager や UserManager を使えばいい…
ASP.NET Core はインテグレーションテストをちゃんとサポートしているので、Web API のテストが書きやすい。 www.nuget.org このパッケージを使えば、xUnit を使ったテストプロジェクトで Web API を簡単にホストしてテストできる。自分の場合、インテグレー…
Swashbuckle.AspNetCore を使うことで、 ASP.NET Core で作成した Web API を Swagger UI 上で試せるようになった。 ただ、大抵の Web API では OAuth2 なり JWT Bearer なりの認証が必要、という風に実装していると思う。 自分の場合は JWT Bearer。 Swagge…
先日、ASP.NET Core MVC で JWT を使った認証を実装する記事を書いた。 tnakamura.hatenablog.com しかし、ASP.NET Core 2.0 では認証まわりがガラッと変わってしまったので、 上の記事にある方法は使えなくなってしまった。 /(^o^)\ナンテコッタイ。 なので、ASP…
Swashbuckle.AspNetCore は ASP.NET Core 2.0 に対応していないから使えないと思っていたが、 勘違いだった。 github.com Swashbuckle.AspNetCore のイシューを読んで発覚。 github.com 実際に試してみたところ、ASP.NET Core 2.0 プロジェクトに Swashbuckl…
開発している Web API を ASP.NET Core 2.0 に移行しようと思っていたが、Web API のドキュメント生成に使っている Swashbuckle.AspNetCore がまだ 2.0 に対していないっぽくて一時中断。 ASP.NET Core MVC にはもとから Microsoft.AspNetCore.Mvc.ApiExplor…
以前、ASP.NET Core MVC で Basic 認証を行う記事を書いた。 tnakamura.hatenablog.com プライベートな Web API なのでこれでいいかなと思っていたが、 大人の事情でそうはいかなくなり、 JWT(Json Web Token) を使った認証に変えることに。 Microsoft.AspNe…
先日 ASP.NET Core で Basic 認証を行うサンプルを書いた。 tnakamura.hatenablog.com ただ、これだと全てのパスで認証が必要になってしまう。 もともとやりたかったことは、 「ASP.NET Core MVC で Authorized 属性を付けたアクションだけを認証必須にする…
ASP.NET Core で Basic 認証を行うサンプルを書いてみた。ユーザーは固定なので、本番で使うときは ASP.NET Core Identity みたいに、ユーザー情報をストアから取得するようにしたほうがいいだろうな。 using Microsoft.AspNetCore.Builder; using Microsoft…
はじめに Swashbuckle はまだプレリリースの段階ではあるけど、 ASP.NET Core にも対応しているみたい。 github.com Swashbuckle を使えば、Web API の実装から Swagger Definitions を生成できる。 温かみのある手作業で、 Web API の Swagger Definitions …
はじめに ASP.NET Core アプリケーションを Docker で動かすことができた。 tnakamura.hatenablog.com そういえば、Heroku で任意の Docker コンテナを動かすことができるようになっていたな。 まだベータ版な上、制限もあるみたいだけど。 もしかしたら ASP…
yo aspnet で作成したプロジェクトには Dockerfile が含まれているので、 ASP.NET Core アプリケーションを Docker で動かすこともできる。 ただ、2016/07/25 時点では Dockerfile に手直しが必要。 そのままだと docker build でコケる。 といっても apt-ge…