{"repo":"gary-archer/oauth.apisample.net","free":true,"listed":false,"github":"https://github.com/gary-archer/oauth.apisample.net","clone":"git clone https://github.com/gary-archer/oauth.apisample.net.git","description":"Final OAuth secured .NET API Code Sample","language":"C#","stars":13,"topics":["api","csharp","dotnet","oauth2"],"license":"MIT","category":"auth-billing-email","readme_excerpt":"Final OAuth .NET API The final OAuth secured .NET API code sample, which returns mock investments data: - The API takes finer control over claims-based authorization to enable security with good manageability. - The API uses structured logging and log aggregation, for the best supportability. API Serves Frontend Clients The API can run as part of an OAuth end-to-end setup, to serve my blog's UI code samples.\\ Running the API in this manner forces it to be consumer-focused to its clients: API Security is Testable The API's clients are UIs, which get user-level access tokens by running an OpenID Connect code flow.\\ For productive test-driven development, the API instead mocks the authorization server: A basic load test fires batches of concurrent requests at the API.\\ This further verifies reliability and the correctness of API logs. API is Supportable You can aggregate request logs and audit logs to Elasticsearch and run Technical Support Queries. Local Development Quick Start To run the code sample locally you must configure some infrastructure before you run the code. Configure DNS and SSL Configure custom development domains by adding these DNS entries to your hosts file: Install OpenSSL 3+ if required, create a secrets folder, then create development certificates: If required, configure Operating system trust for the root CA at the following location: Run the Code - Install a .NET 10+ SDK. - Also install Docker to run integration tests that use Wiremock. Then run the API w","default_branch":null,"files":null,"tree":[],"storefront":"/r/gary-archer","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/gary-archer/oauth.apisample.net/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}