Migrates OWIN OAuth bearer authentication and OWIN-hosted custom Entra ID (Azure AD) token validation to ASP.NET Core AddJwtBearer. Covers Microsoft.Owin.Security.OAuth, JsonWebTokenHandler, TokenValidationParameters, ConfigurationManager and OpenIdConnectConfiguration for JWKS caching, AadIssuerValidator, custom IssuerValidator and IssuerSigningKeyValidator, EnableAadSigningKeyIssuerValidation…
Install
npx skills add microsoft/upgrade-agent-plugins --skill migrating-owin-oauth-to-jwtnpx skills add microsoft/upgrade-agent-plugins --skill migrating-owin-oauth-to-jwt -a claude-code -gnpx skills add microsoft/upgrade-agent-plugins --skill migrating-owin-oauth-to-jwt -a codex -ggemini skills install https://github.com/microsoft/upgrade-agent-plugins.git --path plugins/upgrade-agent/upgrade/dotnet/skills/lazy/libraries/migrating-owin-oauth-to-jwtgh skill install microsoft/upgrade-agent-plugins migrating-owin-oauth-to-jwtgit clone --depth 1 https://github.com/microsoft/upgrade-agent-plugins /tmp/microsoft__upgrade-agent-plugins
mkdir -p ~/.claude/skills ~/.agents/skills
cp -R /tmp/microsoft__upgrade-agent-plugins/plugins/upgrade-agent/upgrade/dotnet/skills/lazy/libraries/migrating-owin-oauth-to-jwt ~/.claude/skills/migrating-owin-oauth-to-jwt # Claude Code
cp -R /tmp/microsoft__upgrade-agent-plugins/plugins/upgrade-agent/upgrade/dotnet/skills/lazy/libraries/migrating-owin-oauth-to-jwt ~/.agents/skills/migrating-owin-oauth-to-jwt # Codex, Cursor, Gemini CLI, Copilot, OpenCode