Vanuit het perspectief van ASP.NET Web API is het gebruik van lidmaatschapsprovider en de kant-en-klare FormsAuthentication al onhandig, dus waarom zou je niet meedoen? :) Hoe dan ook, ervan uitgaande dat je web-API alleen door de webclients wordt gebruikt en FA cool is, kun je de UserData van het FA-ticket gebruiken om de gebruikers-ID in te voeren. Op die manier hoeft u de ID niet elke keer op uw DB te krijgen. Maar u moet het ticket zelf maken en laat de standaard out-of-box-implementatie dat niet voor u doen. Vervolgens kunt u in de PostAuthenticateRequest-gebeurtenis de gebruikers-ID van het ticket lezen en deze in de identiteit instellen. Natuurlijk moet je hiervoor je eigen aangepaste identiteit maken met een ID-eigenschap of als je .NET 4.5 gebruikt, kun je FormsIdentity zelf gebruiken, maar je kunt misschien de NameIdentifier-claim gebruiken om de ID op te slaan. Bekijk dit eens - ASP.NET MVC - Stel aangepaste IIdentity of IPrincipal in .