Category Archives: WebAPI

Advanced OAuth2: Assertion Flow (why)

The core OAuth2 spec defines so called flows, which are basically descriptions of the interactions between a client, a user and an authorization server to request access tokens. Another implied fact is, that the resource server and the authorization server … Continue reading

Posted in ASP.NET, AuthorizationServer, OAuth, WebAPI | 1 Comment

Dissecting the Web API Individual Accounts Template–Part 3: External Accounts

Part 1 covered the basic template security setup. Part 2 focused on the features around local accounts and username/password authentication. This part will deal with third party authentication using Google and friends as well as associating a third party account … Continue reading

Posted in ASP.NET, Katana, OAuth, OWIN, WebAPI | 36 Comments

Dissecting the Web API Individual Accounts Template–Part 2: Local Accounts

In the last post I gave an overview of the security setup of the Individual Accounts template. I recommend reading that first. Also Brock has some great background content – here and here. Disclaimer: I would have designed the API … Continue reading

Posted in ASP.NET, Katana, OAuth, OWIN, WebAPI | 11 Comments

Dissecting the Web API Individual Accounts Template–Part 1: Overview

The Web API v2 Individual Accounts template shows off some quite popular application scenarios, e.g. username/password authentication with local accounts (including create account, change/set password) as well as third party authentication using Facebook, Google etc – including linking those external … Continue reading

Posted in ASP.NET, Katana, OAuth, OWIN, WebAPI | 2 Comments

Thinktecture.IdentityModel.Client v1.0

As part of the restructuring work of IdentityModel, I separated the HTTP and OAuth2 client bits into a separate project. The nice side effect of this is that the client library is now portable and can be used in .NET … Continue reading

Posted in IdentityModel, OAuth, WebAPI | 7 Comments

Adding Refresh Tokens to a Web API v2 Authorization Server

In the last post I showed how to add a simple username/password (aka resource owner password credentials flow) authorization server to Web API v2. This has several advantages: The client does not need to hold on to the user credentials … Continue reading

Posted in AuthorizationServer, IdentityModel, Katana, OAuth, OWIN, WebAPI | 38 Comments

Authorization Servers are good for you (and your Web APIs)

An authorization server is a very important architectural component when it comes to Web API security – think of it as a traffic cop between clients, users and resources. The OAuth2 spec defines it as follows: “The server issuing access … Continue reading

Posted in AuthorizationServer, Katana, OAuth, OWIN, WebAPI | 10 Comments

Client Certificate Authentication Middleware for Katana

Katana has no middleware to turn SSL client certificates into a ClaimsIdentity. And since I am currently collecting material for my upcoming Web API security course I used the opportunity to experiment with Katana authentication middleware. There’s a certain pattern … Continue reading

Posted in IdentityModel, Katana, OWIN, WebAPI | 5 Comments

Thinktecture AuthorizationServer v1.0

Six months ago we released the first preview version of AS to the public. Since then happened quite a bit. We went feature complete for v1, did some bug fixing and used AS in a number of customer projects. We … Continue reading

Posted in AuthorizationServer, OAuth, WebAPI | 2 Comments

Thinktecture AuthenticationHandler for Web API v2

Here I mentioned that there are some incompatibilities between AuthenticationHandler and Web API v2/OWIN hosting. As part of making Thinktecture.IdentityModel more modular – I updated the AuthenticationHandler code and did some cleanup. You can find the source code here and … Continue reading

Posted in IdentityModel, Katana, OWIN, WebAPI | 2 Comments