Articles
Search by category
Leadership
Python
OAuth
General
Umbraco
OpenID Connect
Soft Skills
C#
Authentication
ASP.NET Identity
SAML
FIDO
JOSE
OpenSSL
Identity Server
ASP.NET
Kotlin
PAKE
Dart
Cryptopals
Angular
Blockchain Identity
Azure
Docker
Windows
Entity Framework
Katana
Email Verification
Search by date
A list of all 124 blog articles released on scottbrady91.com.
- 2022-12 - General - Year in review: 2022
- 2022-11 - Leadership - Book notes & reflections: The Making of a Manager
- 2022-10 - OAuth - OAuth client authentication - more than just client secrets
- 2022-10 - Leadership - Book notes & reflections: The Art of Leadership
- 2022-08 - Python - JWT creation and validation in Python using Authlib
- 2022-08 - JOSE - Understanding JSON Web Encryption (JWE)
- 2022-08 - OAuth - New Pluralsight Course: JSON Web Token (JWT) Fundamentals
- 2022-03 - OAuth - Open Banking for OAuth Developers
- 2022-02 - OAuth - Step-up authentication with OAuth and OpenID Connect
- 2021-12 - General - Year in Review: 2021
- 2021-11 - Umbraco - Umbraco frontend membership SSO using OpenID Connect
- 2021-11 - General - Goodbye, Rock Solid Knowledge; Hello, 10x Banking
- 2021-11 - OpenID Connect - Understanding identity tokens
- 2021-11 - Umbraco - Umbraco backoffice SSO with OpenID Connect
- 2021-10 - Soft Skills - How I use Polywork to overcome impostor syndrome
- 2021-09 - C# - How to sign XML using RSA in .NET
- 2021-09 - C# - ECDSA and Custom XML Signatures in .NET
- 2021-08 - C# - Loading Elliptic Curve (EC) Keys in .NET
- 2021-06 - Umbraco - Umbraco MVP 2021
- 2021-06 - OAuth - Client Authentication vs. PKCE: Do you need both?
- 2021-05 - C# - Authenticated Encryption in .NET with AES-GCM
- 2021-04 - Authentication - Beware of Password Shucking
- 2021-03 - ASP.NET Identity - Integrating ASP.NET Identity Password Policies with Password Managers
- 2021-01 - Authentication - Perfecting the password field with the HTML passwordrules attribute
- 2021-01 - SAML - New Pluralsight Course: Getting Started with SAML 2.0
- 2020-12 - General - Year in Review: 2020
- 2020-11 - OAuth - OAuth is Not User Authorization
- 2020-10 - C# - XChaCha20-Poly1305: A Primer with Examples in .NET
- 2020-09 - C# - PEM Loading in .NET Core and .NET 5
- 2020-08 - FIDO - Recording: Let's stop blaming our users for getting hacked when it is our problem to solve
- 2020-08 - JOSE - JWTs: Which Signing Algorithm Should I Use?
- 2020-08 - OpenSSL - Creating RSA Keys using OpenSSL
- 2020-07 - OAuth - OAuth Security Workshop 2020
- 2020-07 - Identity Server - Using ECDSA in IdentityServer4
- 2020-07 - OpenSSL - Creating Elliptic Curve Keys using OpenSSL
- 2020-07 - General - Adding Tailwind Utility Classes to your Bootstrap Website
- 2020-07 - FIDO - Using Biometrics in ASP.NET Core
- 2020-06 - C# - EdDSA for JWT Signing in .NET Core
- 2020-05 - C# - Replacing JWTs with Branca and PASETO in .NET Core
- 2020-04 - JOSE - Alternatives to JSON Web Tokens (JWTs)
- 2020-03 - Identity Server - Outsourcing IdentityServer4 Token Signing to Azure Key Vault
- 2020-02 - FIDO - Building a FIDO Authenticator with OpenSK
- 2020-01 - ASP.NET Identity - IdentityManager2 2020 Update
- 2020-01 - FIDO - Defeating Phishing with FIDO2 for ASP.NET
- 2020-01 - ASP.NET - Refreshing your Legacy ASP.NET IdentityServer Client Applications (with PKCE)
- 2019-12 - General - Year in Review: 2019
- 2019-12 - C# - Supporting Custom JWT Signing Algorithms (ES256K) in .NET Core
- 2019-11 - Kotlin - Creating Signed JWTs using Nimbus JOSE + JWT
- 2019-10 - ASP.NET - Using mkcert for ASP.NET Core Development
- 2019-09 - Authentication - New Pluralsight Course: ASP.NET Authentication - The Big Picture
- 2019-07 - C# - JWT Signing using RSASSA-PSS in .NET Core
- 2019-06 - OpenID Connect - Implementing Sign in with Apple in ASP.NET Core
- 2019-06 - SAML - The Dangers of SAML IdP-Initiated SSO
- 2019-05 - PAKE - Secure Remote Password (SRP) in C# and .NET Core
- 2019-04 - Identity Server - Encrypting Identity Tokens in IdentityServer4
- 2019-03 - Dart - Generating a Crypto Random String in Dart
- 2019-02 - Cryptopals - Solving the Cryptopals Crypto Challenges in C#
- 2019-02 - Cryptopals - Challenge 1: Base64 Encoding
- 2019-02 - Cryptopals - Challenges 2-6: Caesar and Vigenère Ciphers
- 2019-02 - Kotlin - Ktor using OAuth 2.0 and IdentityServer4
- 2019-01 - OAuth - Why Developers Do Care About OAuth and OpenID Connect
- 2019-01 - OpenID Connect - ASP.NET Core using Proof Key for Code Exchange (PKCE)
- 2019-01 - OAuth - Cheat Sheet: OAuth for Browser-Based Applications (e.g. a JavaScript SPA)
- 2019-01 - C# - JSON Web Encryption (JWE) in .NET
- 2019-01 - Angular - Migrating oidc-client-js to use the OpenID Connect Authorization Code Flow and PKCE
- 2019-01 - Authentication - Software Tokens Won't Save You
- 2019-01 - General - Year in Review: 2018 Catch Up
- 2018-12 - Identity Server - Creating Your Own IdentityServer4 Storage Library
- 2018-10 - OAuth - Removing Shared Secrets for OAuth Client Authentication
- 2018-09 - OAuth - Delegation Patterns for OAuth 2.0 using Token Exchange
- 2018-09 - OpenID Connect - Help! I’m Stuck in a Redirect Loop!
- 2018-09 - OAuth - New Pluralsight Course: Getting Started with OAuth 2.0
- 2018-07 - Angular - SPA Identity and Access Control with OpenID Connect and IdentityServer4
- 2018-07 - ASP.NET Identity - Getting Started with IdentityManager2
- 2018-07 - FIDO - A FIDO2 Primer and Proof of Concept using ASP.NET Core
- 2018-06 - Identity Server - ASP.NET Core Swagger UI Authorization using IdentityServer4
- 2018-06 - Blockchain Identity - Lessons Learned from Integrating with Blockchain Identity Providers
- 2018-04 - OAuth - OAuth is Not Authentication
- 2018-03 - OAuth - An Introduction to the OAuth Device Flow
- 2018-03 - ASP.NET Identity - Implementing Medium's Passwordless Authentication using ASP.NET Core Identity
- 2018-02 - Blockchain Identity - Technical Review of Civic's Secure Identity Platform
- 2018-02 - Blockchain Identity - Integrating with Civic SIP using ASP.NET Core
- 2018-02 - C# - JWT Signing using ECDSA in .NET Core
- 2017-11 - Kotlin - JSON Web Token Verification in Ktor using Kotlin and Java-JWT
- 2017-11 - Kotlin - Experimenting with Kotlin and OAuth
- 2017-11 - OpenID Connect - Silent Refresh - Refreshing Access Tokens when using the Implicit Flow
- 2017-10 - ASP.NET Identity - Better Password Hashing in ASP.NET Core
- 2017-08 - OAuth - Don't use the OAuth password grant type
- 2017-08 - Angular - SPA Authentication using OpenID Connect, Angular CLI and oidc-client
- 2017-07 - OpenID Connect - Getting Started with oidc-provider
- 2017-07 - OAuth - The Wrong Ways to Protect an API
- 2017-04 - Identity Server - IdentityServer SharePoint Integration using WS-Federation
- 2017-04 - Azure - Cloudflare Origin Certificates and Azure App Services
- 2017-04 - Docker - ASP.NET Core and Docker Environment Variables
- 2017-03 - ASP.NET Identity - ASP.NET Identity 2 Configurable Password Hasher
- 2017-03 - Windows - Yet Another MakeCert Tutorial
- 2017-02 - General - Software Design and Development Conference 2017
- 2016-11 - OAuth - Consuming External OAuth Services using IdentityModel
- 2016-09 - Entity Framework - Entity Framework Core In Memory Testing
- 2016-09 - Identity Server - Getting Started with IdentityServer4 and Duende IdentityServer
- 2016-07 - Azure - Getting Started with the Azure DocumentDB .NET SDK
- 2016-06 - General - NDC Oslo 2016
- 2016-05 - Katana - OWIN Basic Authentication
- 2016-05 - Katana - WS-Federation Token Encryption using Microsoft Katana
- 2016-04 - ASP.NET Identity - Identity Manager using ASP.NET Identity
- 2016-04 - Windows - IIS - The Process Cannot Access the File Because it is Being Used by Another Process
- 2016-03 - General - How I Prepared For My First Technical Presentation
- 2016-01 - General - Ten Steps to Learn Anything Quickly Review
- 2016-01 - Identity Server - Identity Server 3 using WS-Federation
- 2015-11 - Email Verification - Python Email Verification Script
- 2015-08 - Katana - Creating OWIN Middleware using Microsoft Katana
- 2015-08 - Identity Server - Identity Server 3 using ASP.NET Identity
- 2015-08 - ASP.NET Identity - Quick and Easy ASP.NET Identity Multitenancy
- 2015-06 - C# - Deserializing a JSON Enumerated String to a Different C# Enumerated Type
- 2015-05 - Katana - OWIN Katana Introduction
- 2015-05 - General - Software Design and Development Conference 2015
- 2015-05 - Identity Server - Identity Server 3 Standalone Implementation Part 3
- 2015-04 - Identity Server - Identity Server 3 Standalone Implementation Part 2
- 2015-04 - Identity Server - Identity Server 3 Standalone Implementation Part 1
- 2015-02 - Identity Server - Thinktecture Identity Server 3
- 2015-01 - OpenID Connect - OpenID Connect Flows
- 2015-01 - OpenID Connect - OpenID Connect Endpoints
- 2015-01 - OpenID Connect - What is OpenID Connect?
- 2015-01 - General - Why Blog