Getting Started

Get familiar with the goals of this course and its prerequisites.

Target audience

This course is primarily designed for software developers and engineers who are familiar with ASP.NET Core but aren't acquainted with application authentication and authorization or the single sign-on (SSO) process. Moreover, taking this course can benefit developers who have previously worked with various authentication and authorization technologies but haven't worked with distributed authentication mechanisms such as SSO. This is because SSO is different from an in-app authentication mechanism that only works with a single application.

This course is also suitable for novice .NET developers equipped with the fundamentals of C# and .NET but haven’t yet had an opportunity to work with ASP.NET Core. Although this course will not cover ASP.NET Core in detail, a summary of its most fundamental features and components will be provided.

Knowledge of ASP.NET Core beforehand isn't essential for learning from the course, but it can be difficult to follow along unless the learner understands some fundamentals of web applications, such as the following:

  • The concepts of the client and the server

  • A rudimentary understanding of the HTTP protocol

  • An understanding of HTTP verbs (GET, POST, etc.)

  • Knowledge of the structure of a URL and how it maps to a specific online resource

Prerequisites

Before beginning the course, the learner must understand the fundamentals of .NET in C#. This includes, but isn't limited to, the following:

  • Basic C# syntax, including fundamental keywords and the control flow

  • Fundamentals of object-oriented programming

  • .NET project structure

  • .NET application entry point and startup sequence

  • Dependency injection in a .NET project

  • Referencing third-party libraries from a .NET project

In addition to this, it’ll be beneficial if the learners are familiar with ASP.NET Core and the different application types that can be built using this framework. However, this isn't strictly necessary because an overview of each supported application type will be provided.

Roadmap and learning outcomes

Here is the course’s roadmap.

Course roadmap
Course roadmap

By the end of this course, learners will know how to implement SSO in all major application types supported by the ASP.NET Core development framework. This will enable them to implement authentication and authorization mechanisms that can be shared between different apps within their ecosystem, so the users will not have to reauthenticate while accessing different apps.

The types of applications we will learn to implement SSO in are as follows:

  • UI-based MVC and Razor Pages applications

  • Web API applications (both classic controller-based and minimal APIs)

  • Blazor applications (both Blazor Server and WebAssembly)

  • gRPC applications

  • SignalR communication