Skip to content

Latest commit

 

History

History
43 lines (21 loc) · 2.23 KB

README.md

File metadata and controls

43 lines (21 loc) · 2.23 KB

WebAPIBasicAuthenticationDemo

ASP.Net Web API Basic Authentication Demo Application + Client Tester CRUD (Get, Post, Put, Delete) Windows Form Application


Project Article Here: https://portfolio.katiegirl.net/2020/03/04/asp-net-web-api-basic-authentication-demo-application-client-tester-crud-get-post-put-delete-windows-form-application/

This project presents a Visual Studio solution including a simple demo ASP.Net Web API Basic Authentication Service Application and a “Tester” Client (Windows Form Application) that allows the user to test the Web API with CRUD operations (GET, POST, PUT, DELETE) that service design requires authentication (except the Get). In addition to demonstrating standard CRUD capabilities, the Web API service implements a .Net Memory Cache (MemoryCache) and custom username and password validator. Passwords are stored securely using Password-Based Key Derivation Function PBKD cryptology. The client “tester” windows form application is not intended as a UX/UI demo but used to test and verify that the backend authentication service allows the user to register with a username and password and verify the Web API CRUD functions based on basic authentication scheme. Lastly, the project is shown in the demo section with a video and screen captures. Note: Every Web API Authentication service should use secure transport. For brevity, this demo project does not implement or discuss the complicated detail nature of SSL/TLS.


The demo project consists of these simple component topics:

ASP.Net Web API Service (Hosted by IIS Express) Application Project “WebAPIService”

Client “Tester to Service” Windows Form Application Project “Client”


ASP.Net Web API Service Application

The ASP.Net Web Application template was used to create a simple Web API service and was hosted on my local development machine using IIS Express launched from Visual Studio. The API functions will be discussed after other topics.


Topics

User Modeling

Memory Cache “MemoryCache” .Net Implementation

PBDK (Password-Based Key Derivation) Secure Password Cryptology

Custom Username and Password Validator

Authentication Handler

Registration Controller

Values Controller