thinktecture-labs / webinar-keycloak-authorization

Keycloak Authorization Services Integration in ASP.NET Core and Angular.

Home Page:https://www.thinktecture.com/de/asp-net/webinar-deep-dive-keycloak-authorization/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Demo for Keycloak Authorization Services Integration in ASP.NET Core and Angular.

Start

Use

docker-compose up

to start Keycloak, the API and Angular Frontend.

Urls

System Url
Keycloak http://localhost:8080
API http://localhost:5000
Frontend http://localhost:4200

Logins

Username Password Description
admin admin Keycloak admin user
alice alice Sales person (Can edit & delete customer. Can create projects)
bob bob Projectmanager (Can delete projects. Can archive projects where he is lead)

Point of interest

API

File Description
startup.cs Configures ASP.NET Core authorization policies
DecisionRequirementHandler.cs Handles decision requirements
RptRequirementHandler Handles RPT requirements

Frontend

File Description
keycloak.service.ts getEntitlement requests a RPT from Keycloak.
keycloak.service.ts loadPermission loads all permissions from Keycloak to make them available in the client.
backend.interceptor.ts interceptor that uses either RPT or normal Access Token depending on the URL

Related Links

About

Keycloak Authorization Services Integration in ASP.NET Core and Angular.

https://www.thinktecture.com/de/asp-net/webinar-deep-dive-keycloak-authorization/

License:MIT License


Languages

Language:C# 71.5%Language:TypeScript 20.5%Language:HTML 4.6%Language:JavaScript 1.9%Language:Dockerfile 1.5%Language:CSS 0.0%