{"id":15410553,"url":"https://github.com/damienbod/blazor.bff.openidconnect.template","last_synced_at":"2025-04-08T09:07:51.821Z","repository":{"id":37866208,"uuid":"441663910","full_name":"damienbod/Blazor.BFF.OpenIDConnect.Template","owner":"damienbod","description":"Blazor.BFF.OpenIDConnect.Template,  Blazor WASM hosted in ASP.NET Core using OpenID Connect BFF (server authentication)","archived":false,"fork":false,"pushed_at":"2024-12-10T07:42:16.000Z","size":4564,"stargazers_count":138,"open_issues_count":11,"forks_count":20,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-04-01T08:29:54.898Z","etag":null,"topics":["aspnet-core","bff","blazor","dotnet","oauth2","oidc","openid-connect","wasm"],"latest_commit_sha":null,"homepage":"https://www.nuget.org/packages/Blazor.BFF.OpenIDConnect.Template/","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/damienbod.png","metadata":{"files":{"readme":"README-NUGET.md","changelog":"Changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-25T11:20:50.000Z","updated_at":"2025-03-20T14:25:42.000Z","dependencies_parsed_at":"2023-02-12T15:31:39.901Z","dependency_job_id":"2f169c9b-e8b2-4b91-9f1b-85792c907169","html_url":"https://github.com/damienbod/Blazor.BFF.OpenIDConnect.Template","commit_stats":{"total_commits":166,"total_committers":4,"mean_commits":41.5,"dds":"0.14457831325301207","last_synced_commit":"dc8915e2a736d5de2cfdfb695cd93104e660a4b6"},"previous_names":[],"tags_count":34,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damienbod%2FBlazor.BFF.OpenIDConnect.Template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damienbod%2FBlazor.BFF.OpenIDConnect.Template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damienbod%2FBlazor.BFF.OpenIDConnect.Template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damienbod%2FBlazor.BFF.OpenIDConnect.Template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/damienbod","download_url":"https://codeload.github.com/damienbod/Blazor.BFF.OpenIDConnect.Template/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247809962,"owners_count":20999816,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aspnet-core","bff","blazor","dotnet","oauth2","oidc","openid-connect","wasm"],"created_at":"2024-10-01T16:44:59.210Z","updated_at":"2025-04-08T09:07:51.802Z","avatar_url":"https://github.com/damienbod.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Blazor.BFF.OpenIDConnect.Template\r\n\r\n[![.NET](https://github.com/damienbod/Blazor.BFF.OpenIDConnect.Template/actions/workflows/dotnet.yml/badge.svg)](https://github.com/damienbod/Blazor.BFF.OpenIDConnect.Template/actions/workflows/dotnet.yml) [![NuGet Status](http://img.shields.io/nuget/v/Blazor.BFF.OpenIDConnect.Template.svg?style=flat-square)](https://www.nuget.org/packages/Blazor.BFF.OpenIDConnect.Template/) [Change log](https://github.com/damienbod/Blazor.BFF.OpenIDConnect.Template/blob/main/Changelog.md)\r\n\r\nThis template can be used to create a Blazor WASM application hosted in an ASP.NET Core Web app using OpenID Connect to authenticate using the BFF security architecture. (server authentication) This removes the tokens from the browser and uses cookies with each HTTP request, response. The template also adds the required security headers as best it can for a Blazor application.\r\n\r\n## Features\r\n\r\n- WASM hosted in ASP.NET Core 9\r\n- BFF (backend for frontend) with Standard OpenID Connect\r\n- OAuth2 and OpenID Connect OIDC\r\n- No tokens in the browser\r\n\r\n## Using the template\r\n\r\n### install\r\n\r\n```\r\ndotnet new install Blazor.BFF.OpenIDConnect.Template\r\n```\r\n\r\n### run\r\n\r\n```\r\ndotnet new blazorbffoidc -n YourCompany.Bff --HttpsPortCustom 44348\r\n```\r\n\r\nUse the `-n` or `--name` parameter to change the name of the output created. This string is also used to substitute the namespace name in the .cs file for the project.\r\n\r\n## Setup after installation\r\n\r\nAdd the OpenID Connect App registration settings\r\n\r\n```\r\n{\r\n  \"OpenIDConnectSettings\": {\r\n    \"Authority\": \"--your-authority--\",\r\n    \"ClientId\": \"--client ID--\",\r\n    \"ClientSecret\": \"--client-secret (user secrets)--\"\r\n  },\r\n```\r\n\r\n\r\n### uninstall\r\n\r\n```\r\ndotnet new uninstall Blazor.BFF.OpenIDConnect.Template\r\n```\r\n\r\n\r\n## Credits, Used NuGet packages + ASP.NET Core 9.0 standard packages\r\n\r\n- NetEscapades.AspNetCore.SecurityHeaders\r\n\r\n## Links\r\n\r\nhttps://github.com/andrewlock/NetEscapades.AspNetCore.SecurityHeaders\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamienbod%2Fblazor.bff.openidconnect.template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdamienbod%2Fblazor.bff.openidconnect.template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamienbod%2Fblazor.bff.openidconnect.template/lists"}