Blog Posts for: Asp.net Core

Forcing user to sign in with their Google Organization (G Suite) account

12 September 2017

Microsoft has a nice document explaining how to allow users to sign in to your application with their Google accounts. I was curious to see how one could go about forcing users to sign in with their organizational account. Why would you want to do this? Well, let say your company is using G Suite as its directory service. Only allowing users to sign in with their organizational (G Suite) email address means that you only have to procure users on the G Suite directory service.

Razor Pages tip: Define extra handlers for a Razor Page

10 September 2017

I have been tinkering with Razor Pages a little but, and had a requirement where I wanted to make an AJAX request to the server from a Razor Page. A Razor Page source file typically contains 2 handlers, namely OnGet and OnPost which handles GET and POST requests respectively: public class IndexModel : PageModel { public void OnGet() { // Process GET requests } public void OnPost() { // Process POST requests } } If the handler is an async method, you can also optionally use an Async suffix, for example:

Accessing the OIDC tokens in ASP.NET Core 2.0

01 August 2017

Earlier the year I wrote a blog post which described how to access the JWT Bearer token when using ASP.NET Core 2.0. Though that was specifically for when using the JWT middleware, you could also use that technique when using the OIDC middleware. In ASP.NET Core 1.1 So for example, in ASP.NET Core 1.x, if you wanted to access the tokens (id_token, access_token and refresh_token) from your application, you could set the SaveTokens property when registering the OIDC middleware:

Overriding the NameClaimType when using the ASP.NET Core OpenID Connect middleware

30 May 2017

When using the ASP.NET Core OpenID Connect middleware, after a user has signed in you can access the name of the user by using the User.Identity.Name property. What this does under the cover is to look for the http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name claim type and then return that value. In the case of Auth0, we actually return a user’s name in the name claim of an id_token and this does not get automatically mapped to the http://schemas.

Access the JWT bearer token when using the JWT middleware in ASP.NET Core

26 May 2017

When using JSON Web Tokens (JWTs) as Bearer tokens in your ASP.NET Core Web API, it may sometimes be required to access the actual token which was passed to the API somewhere else in your API. For Remote Map for example I have the requirement to access the user’s full profile under certain conditions. I want to store some of the user’s personal information in the local database, and in order to obtain their information I have to call the /userinfo endpoint of the Auth0 Authentication API.

Introducing Remote Map: An end-to-end Auth0 sample for .NET developers

22 May 2017

It seems I have not had much success with announcing my intentions to start a new project and blog about it. Before long something more interesting comes along and I am off in another direction and working on a new pet project. Case in point: GeoToast Well, seems I don’t learn as I am trying this again. This time however I have better motivation to get this done (I think).

Determine a user's location from their IP Address in ASP.NET Core

18 May 2017

To determine a user’s location in a web browser you can use the HTML Geolocation API. There are however a couple of issues with this. First, the user will be prompted to give permission for you to determine their location. If they deny this request, then you will not be able to determine the location. Secondly, this is a JavaScript API, and therefore a client-side solution. But what if you want to determine a user’s location on the server?

Creating a Serverless Application with ASP.NET Core, AWS Lambda and AWS API Gateway

07 May 2017

In my previous blog post I gave an overview of how you can create a serverless application using .NET Core and AWS Lambda. In this blog post I will show a similar - yet quite different - programming model. Instead of using just plain .NET Core, I’ll be using ASP.NET Core with AWS Lambda. A quick reminder from my introductory blog post in this series may be in order.

Creating a Serverless Application with .NET Core, AWS Lambda and AWS API Gateway

11 April 2017

Previously I gave an overview of the programming models when using NET Core with AWS Lambda, and I also showed how to create an image compressor in Lambda and C#. This time around we’ll put together a simple Web API with a couple of endpoints which can be called from any client application. The API I’ll create will utilize NodaTime library created by Jon Skeet to return a list of time zones based on the Time Zone database.

Getting started with .NET Core and AWS Lambda

22 March 2017

This blog post will provide you with a brief introduction to using C# and .NET Core with AWS Lambda and also look at the different programming models available when using .NET Core with Lambda. The reason why I started looking into this was because I wanted a dead simple hosting solution for GeoToast. And yeah, it has been a while since I have written about GeoToast. I spent a month in Japan, and sightseeing was higher on my list of priorities than coding…