# OAuth 2.0

OAuth 2.0 is an industry-standard authorization protocol for web, desktop, mobile, and living-room-device applications.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Appwrite Init 2026 recap: Everything we shipped

DevFeed: [Appwrite Init 2026 recap: Everything we shipped](<https://devfeed.tech/articles/appwrite-init-2026-recap-everything-we-shipped-26795.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/appwrite-init-2026-recap>)

Author: Aishwari Pahwa

Published: 2026-09-15T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [releases](<https://devfeed.tech/topics/releases.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>)

Tags: [2](<https://devfeed.tech/tags/2.md>), [firewall](<https://devfeed.tech/tags/firewall.md>), [init](<https://devfeed.tech/tags/init.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [recap](<https://devfeed.tech/tags/recap.md>), [release](<https://devfeed.tech/tags/release.md>), [releases](<https://devfeed.tech/tags/releases.md>), [s3](<https://devfeed.tech/tags/s3.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>)

### AI overview

An Appwrite Init 2026 recap covering five days of launches, including Appwrite 2.0, a redesigned Console, native PostgreSQL, VectorsDB, DocumentsDB, MySQL, S3-compatible Storage, Firewall, OAuth2, and Domains.

### Source excerpt

An Appwrite Init 2026 recap of all five days of launches, from Appwrite 2.0 and native PostgreSQL to VectorsDB, S3 support, Firewall, OAuth2, and Domains.

## This Week in Spring - September 15th, 2026

DevFeed: [This Week in Spring - September 15th, 2026](<https://devfeed.tech/articles/this-week-in-spring-september-15th-2026-26974.md>)

Original publisher: [Read original article](<https://spring.io/blog/2026/09/15/this-week-in-spring-september-15th-2026>)

Author: joshlong

Published: 2026-09-15T00:00:00Z

Content type: article

Language: en

Sources: [Spring](<https://devfeed.tech/sources/spring.md>)

Topics: [Spring AI](<https://devfeed.tech/topics/spring-ai.md>), [Java](<https://devfeed.tech/topics/java.md>), [Security](<https://devfeed.tech/topics/security.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Spring Boot](<https://devfeed.tech/topics/spring-boot.md>), [JavaFX](<https://devfeed.tech/topics/javafx.md>), [IntelliJ IDEA](<https://devfeed.tech/topics/intellij-idea.md>), [debugging](<https://devfeed.tech/topics/debugging.md>)

Tags: [batch](<https://devfeed.tech/tags/batch.md>), [boot](<https://devfeed.tech/tags/boot.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [event-driven](<https://devfeed.tech/tags/event-driven.md>), [intellij-idea](<https://devfeed.tech/tags/intellij-idea.md>), [java](<https://devfeed.tech/tags/java.md>), [learn](<https://devfeed.tech/tags/learn.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [reactive](<https://devfeed.tech/tags/reactive.md>), [security](<https://devfeed.tech/tags/security.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [spring](<https://devfeed.tech/tags/spring.md>), [spring-ai](<https://devfeed.tech/tags/spring-ai.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

A September 15, 2026 roundup of Spring-related developer content, covering Java memory management, Spring AI chat-memory summarization, JavaFX application security with Spring Security and OAuth 2.0, OAuth 2.1 with Spring Authorization Server, Spring and Gemini video understanding, Java AI libraries, Netflix's Java and Spring story, Spring Batch, and Spring Boot debugging.

### Source excerpt

Hi, Spring fans! Welcome to another rip-roarin' installment of This Week in Spring! I'm writing this to you from sun-kissed San Francisco, CA, sipping some coffee and watching the bay from my breakfast nook. What a wonderful day! A wonderful day in which to learn about the latest and greatest in Spring, even! Let's dive right in! I really loved this presentation by Oracle's Ron Pressler on the principles of memory management in Java More Craig Walls Spring AI goodness! Here's a nice recipe on summarizing chat memory Over the last few weeks, I've done some content on securing JavaFX applications with Spring Security and OAuth 2.0. That work has landed, and our friends at JFX-central.com have taken that video and the resulting code and transcribed the content into this lovely tutorial - check it out! I loved this post on securing modern applications with OAuth 2.1 and Spring Authorization Server This is a really cool video on understanding video with Spring and Gemini I just learned about this amazing new Java library called Quixotic.ai (what a name! LOL) that provides all sorts of cool stuff that might make your Java-based AI workloads even better. I wonder if there are amazing integration possibilities for Spring AI, too... In last week's A Bootiful Podcast, I was delighted to sit down and chat with Netflix's Paul Bakker on their Java and Spring story, scaling the system, and more. Huh! There's a new Spring Batch IntelliJ IDEA plugin, but search me for what's new! No release notes. Either way, get it while it's hot! Speaking of Spring Batch, there's a nice post here on scaling to millions of rows with Spring Batch that just dropped Speaking of Spring and IntelliJ, there's a nice article over on Baeldung on debugging Spring Boot-based workloads with the Spring debugger

## A Week of Symfony #1028 (September 7-13, 2026)

DevFeed: [A Week of Symfony #1028 (September 7-13, 2026)](<https://devfeed.tech/articles/a-week-of-symfony-1028-september-7-13-2026-8960.md>)

Original publisher: [Read original article](<https://symfony.com/blog/a-week-of-symfony-1028-september-7-13-2026>)

Author: Javier Eguiluz

Published: 2026-09-13T07:05:00Z

Content type: news

Language: en

Sources: [Symfony Blog](<https://devfeed.tech/sources/symfony-blog.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [cache](<https://devfeed.tech/tags/cache.md>), [code](<https://devfeed.tech/tags/code.md>), [development](<https://devfeed.tech/tags/development.md>), [docs](<https://devfeed.tech/tags/docs.md>), [http](<https://devfeed.tech/tags/http.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [security](<https://devfeed.tech/tags/security.md>), [symfony](<https://devfeed.tech/tags/symfony.md>)

### AI overview

Symfony's weekly roundup covers standalone framework bundles, Docker-style console subcommands, expanded OAuth2 and OpenID Connect support, and SymfonyCon Warsaw 2026 announcements. It also reports merged pull requests, closed issues, and selected development fixes.

### Source excerpt

This week, Symfony introduced standalone bundles for the framework features (MessengerBundle, HttpClientBundle, PropertyInfoBundle, etc.), added Docker-style console subcommands, and expanded OAuth2 and OpenID Connect support. In addition, we announced the...

## Turn your app into an MCP server with the Appwrite OAuth2 server

DevFeed: [Turn your app into an MCP server with the Appwrite OAuth2 server](<https://devfeed.tech/articles/turn-your-app-into-an-mcp-server-with-the-appwrite-oauth2-server-16510.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/turn-your-app-into-an-mcp-server>)

Author: Atharva Deosthale

Published: 2026-09-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Databases](<https://devfeed.tech/topics/databases.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-tools](<https://devfeed.tech/tags/ai-tools.md>), [app](<https://devfeed.tech/tags/app.md>), [auth](<https://devfeed.tech/tags/auth.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [browser](<https://devfeed.tech/tags/browser.md>), [claude](<https://devfeed.tech/tags/claude.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [code](<https://devfeed.tech/tags/code.md>), [databases](<https://devfeed.tech/tags/databases.md>), [http](<https://devfeed.tech/tags/http.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [remote-mcp-server](<https://devfeed.tech/tags/remote-mcp-server.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [web](<https://devfeed.tech/tags/web.md>), [web-app](<https://devfeed.tech/tags/web-app.md>)

### AI overview

This tutorial explains how to turn an Appwrite-based application into a remote MCP server. It uses an Appwrite Function, the OAuth2 server included in an Appwrite project, and a consent screen so AI tools such as Claude Code can access and act on behalf of signed-in users.

### Source excerpt

Build a remote MCP server for your product, host it on Appwrite Functions, and let AI tools like Claude Code sign in through the OAuth2 server built into your Appwrite project.

## Build a memory MCP server on Appwrite

DevFeed: [Build a memory MCP server on Appwrite](<https://devfeed.tech/articles/build-a-memory-mcp-server-on-appwrite-16459.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/build-a-memory-mcp-server>)

Author: Atharva Deosthale

Published: 2026-09-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [MCP Server](<https://devfeed.tech/topics/mcp-server.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Embeddings](<https://devfeed.tech/topics/embeddings.md>), [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-assistants](<https://devfeed.tech/tags/ai-assistants.md>), [ai-tools](<https://devfeed.tech/tags/ai-tools.md>), [api](<https://devfeed.tech/tags/api.md>), [claude](<https://devfeed.tech/tags/claude.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [embeddings](<https://devfeed.tech/tags/embeddings.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [memory](<https://devfeed.tech/tags/memory.md>), [net](<https://devfeed.tech/tags/net.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

This tutorial builds Recall, a small persistent-memory app on Appwrite. It hosts a stateless remote MCP server in an Appwrite Function, stores embedded memories in VectorsDB for similarity search, and uses OAuth2 for user-authorized access. It also explains connecting Claude Code to the server.

### Source excerpt

Give your AI tools a shared, persistent memory. Host a stateless MCP server on Appwrite Functions, store memories in VectorsDB, and protect it with your project's OAuth2 server.

## Announcing the Appwrite OAuth2 server: Turn your project into an identity provider

DevFeed: [Announcing the Appwrite OAuth2 server: Turn your project into an identity provider](<https://devfeed.tech/articles/announcing-the-appwrite-oauth2-server-turn-your-project-into-an-identity-provider-16437.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-oauth2-server>)

Author: Matej Bačo

Published: 2026-09-04T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [API](<https://devfeed.tech/topics/api.md>), [internal developer portal](<https://devfeed.tech/topics/internal-developer-portal.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [api](<https://devfeed.tech/tags/api.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [developer-portal](<https://devfeed.tech/tags/developer-portal.md>), [github](<https://devfeed.tech/tags/github.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [product](<https://devfeed.tech/tags/product.md>), [sdks](<https://devfeed.tech/tags/sdks.md>)

### AI overview

Appwrite announces an OAuth2 server that lets projects act as OAuth 2.1 and OpenID Connect providers. Other applications can register as clients, obtain user-approved scoped access to APIs, and use standard authorization and token flows.

### Source excerpt

Your Appwrite project can now act as an OAuth 2.1 and OpenID Connect provider, so other apps can offer Sign in with your product and request scoped access to your APIs.

## Announcing Appwrite Apps: Create apps that build on your users' Appwrite projects

DevFeed: [Announcing Appwrite Apps: Create apps that build on your users' Appwrite projects](<https://devfeed.tech/articles/announcing-appwrite-apps-create-apps-that-build-on-your-users-appwrite-projects-16402.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-apps-for-appwrite-partners>)

Author: Atharva Deosthale

Published: 2026-09-04T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [API keys](<https://devfeed.tech/topics/api-keys.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [API](<https://devfeed.tech/topics/api.md>), [migration](<https://devfeed.tech/topics/migration.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [api-keys](<https://devfeed.tech/tags/api-keys.md>), [apis](<https://devfeed.tech/tags/apis.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [developers](<https://devfeed.tech/tags/developers.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [product](<https://devfeed.tech/tags/product.md>)

### AI overview

Appwrite announces Appwrite Apps, allowing organizations to register applications that serve other Appwrite developers. The feature uses OAuth 2.1 and OpenID Connect for consent-based, scoped access to selected projects and organizations instead of pasted API keys.

### Source excerpt

Register an app in your organization and build dashboards, deployment tools, CLIs, and agents for other Appwrite developers, with consent-based, scoped tokens instead of pasted API keys.

## How to add Sign in with Appwrite to your app

DevFeed: [How to add Sign in with Appwrite to your app](<https://devfeed.tech/articles/how-to-add-sign-in-with-appwrite-to-your-app-16508.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/sign-in-with-appwrite-guide>)

Author: Matej Bačo

Published: 2026-09-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [pkce](<https://devfeed.tech/topics/pkce.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [pkce](<https://devfeed.tech/tags/pkce.md>), [sign-in](<https://devfeed.tech/tags/sign-in.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

A tutorial for enabling Appwrite's built-in OAuth2 provider so users can sign in to an app with their Appwrite account. It explains the consent and authorization-code flow, PKCE protection, and provider setup in the Appwrite Console.

### Source excerpt

Let users log in with their Appwrite account using the built-in OAuth2 provider. Learn how the flow works and how to set it up end to end.

## Meet the Symfony Core Team at the API Platform Conference 2026!

DevFeed: [Meet the Symfony Core Team at the API Platform Conference 2026!](<https://devfeed.tech/articles/meet-the-symfony-core-team-at-the-api-platform-conference-2026-8578.md>)

Original publisher: [Read original article](<https://symfony.com/blog/meet-the-symfony-core-team-at-the-api-platform-conference-2026>)

Author: Cécile HAMEREL

Published: 2026-09-02T14:30:00Z

Content type: news

Language: en

Sources: [Symfony Blog](<https://devfeed.tech/sources/symfony-blog.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [Symfony](<https://devfeed.tech/topics/symfony.md>), [PHP](<https://devfeed.tech/topics/php.md>), [migration](<https://devfeed.tech/topics/migration.md>), [Domain-driven design (DDD)](<https://devfeed.tech/topics/domain-driven-design.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [Model Context Protocol (MCP)](<https://devfeed.tech/topics/model-context-protocol-mcp.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [ai-agents](<https://devfeed.tech/tags/ai-agents.md>), [api-platform](<https://devfeed.tech/tags/api-platform.md>), [conference](<https://devfeed.tech/tags/conference.md>), [event](<https://devfeed.tech/tags/event.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [migration](<https://devfeed.tech/tags/migration.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [php](<https://devfeed.tech/tags/php.md>), [symfony](<https://devfeed.tech/tags/symfony.md>)

### AI overview

The API Platform Conference 2026 will take place in Lille, France, on September 17-18. The event will feature nearly 30 talks, including sessions by Symfony Core Team members on migration, API security, DDD, HTTP headers, FrankenPHP, AI agents, and MCP.

### Source excerpt

The API Platform Conference, the international event dedicated to the API Platform framework and its ecosystem, will take place in two weeks in Lille, France, on September 17-18, 2026. Nearly 30 talks are scheduled, in both French and English, covering...

## Your app is the other half of agent SSO

DevFeed: [Your app is the other half of agent SSO](<https://devfeed.tech/articles/your-app-is-the-other-half-of-agent-sso-15992.md>)

Original publisher: [Read original article](<https://workos.com/blog/agent-sso-resource-app-side>)

Author: WorkOS

Published: 2026-08-31T20:22:53Z

Content type: opinion

Language: en

Sources: [WorkOS Blog](<https://devfeed.tech/sources/workos-blog.md>)

Topics: [Single sign-on (SSO)](<https://devfeed.tech/topics/sso.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [computer-use](<https://devfeed.tech/topics/computer-use.md>)

Tags: [ai-agents](<https://devfeed.tech/tags/ai-agents.md>), [app](<https://devfeed.tech/tags/app.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [jwt](<https://devfeed.tech/tags/jwt.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [security](<https://devfeed.tech/tags/security.md>), [sso](<https://devfeed.tech/tags/sso.md>)

### AI overview

This commentary explains that Okta's Agent SSO and the Cross App Access standard broker connections between AI agents and enterprise applications, but the connected application remains responsible for validating the grant and issuing its own access token. It describes the resource-side roles and the underlying OAuth and JWT-based standards.

### Source excerpt

Okta's Agent SSO went GA on the Cross App Access standard. The IdP brokers the connection, but your app still has to validate the grant and issue the token.

## Type-Safe Authentication in Rust with Auth0 and Axum

DevFeed: [Type-Safe Authentication in Rust with Auth0 and Axum](<https://devfeed.tech/articles/type-safe-authentication-in-rust-with-auth0-and-axum-15651.md>)

Original publisher: [Read original article](<https://auth0.com/blog/type-safe-authentication-rust-auth0-axum/>)

Author: Aniket Bhattacharyea

Published: 2026-08-31T00:00:00Z

Content type: tutorial

Language: en

Sources: [Auth0 Blog](<https://devfeed.tech/sources/auth0-blog.md>)

Topics: [Authentication](<https://devfeed.tech/topics/authentication.md>), [Auth0](<https://devfeed.tech/topics/auth0.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [auth0](<https://devfeed.tech/tags/auth0.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [cli](<https://devfeed.tech/tags/cli.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [rust](<https://devfeed.tech/tags/rust.md>), [tokens](<https://devfeed.tech/tags/tokens.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

A tutorial showing how to build a Rust CLI that uses Auth0's OAuth 2.0 Device Authorization Flow, then create an Axum API that validates the resulting access token before allowing access to a protected route.

### Source excerpt

Secure your Rust CLI applications with Auth0 Device Code flow and protect your Axum backend endpoints by validating JWTs with Rust's type safety.

## What invalid\_grant actually means, provider by provider

DevFeed: [What invalid\_grant actually means, provider by provider](<https://devfeed.tech/articles/what-invalid-grant-actually-means-provider-by-provider-16020.md>)

Original publisher: [Read original article](<https://workos.com/blog/invalid-grant-oauth-errors-by-provider>)

Author: WorkOS

Published: 2026-08-27T00:00:00Z

Content type: article

Language: en

Sources: [WorkOS Blog](<https://devfeed.tech/sources/workos-blog.md>)

Topics: [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Google](<https://devfeed.tech/topics/google.md>), [Microsoft](<https://devfeed.tech/topics/microsoft.md>), [Slack](<https://devfeed.tech/topics/slack.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [bug](<https://devfeed.tech/tags/bug.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>)

### AI overview

This article explains that OAuth 2.0's invalid_grant error covers five specification conditions, while providers use the same error differently. It compares provider-specific meanings for Google, Microsoft, Salesforce, Xero, QuickBooks, and Slack, and explains why recovery depends on provider-specific error details, often with a fallback to full re-authorization.

### Source excerpt

One string, five spec conditions, and a different meaning at every provider. Here is what Google, Microsoft, Salesforce, Xero, QuickBooks, and Slack each mean by it.

## Add Cross App Access to Your OIDC Resource Application

DevFeed: [Add Cross App Access to Your OIDC Resource Application](<https://devfeed.tech/articles/add-cross-app-access-to-your-oidc-resource-application-15976.md>)

Original publisher: [Read original article](<https://developer.okta.com/blog/2026/08/24/xaa-oidc-resource>)

Author: Sohail Pathan

Published: 2026-08-24T05:00:00Z

Content type: tutorial

Language: en

Sources: [Okta Developer](<https://devfeed.tech/sources/okta-developer.md>)

Topics: [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [API](<https://devfeed.tech/topics/api.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [Single sign-on (SSO)](<https://devfeed.tech/topics/sso.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [cross-app-access](<https://devfeed.tech/tags/cross-app-access.md>), [jwt](<https://devfeed.tech/tags/jwt.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [okta](<https://devfeed.tech/tags/okta.md>), [scopes](<https://devfeed.tech/tags/scopes.md>), [sso](<https://devfeed.tech/tags/sso.md>), [token](<https://devfeed.tech/tags/token.md>), [xaa](<https://devfeed.tech/tags/xaa.md>)

### AI overview

This guide explains how OIDC-federated applications can support Cross App Access (XAA) for API access on behalf of users. It covers validating and redeeming the ID-JAG, resolving users from claims, issuing access tokens, updating authorization server metadata, and testing the end-to-end flow.

### Source excerpt

If you currently federate enterprise customers using OpenID Connect (OIDC) and want to allow applications to access your API on behalf of those users, this Cross App Access (XAA) guide is for you. The Identity Assertion Authorization Grant specification, the basis of XAA, was designed with OIDC in mind. Your authorization server already trusts the customer's IdP for single sign-on (SSO), and XAA reuses that same trust for API access. This guide details what you need to support, how to validate the grant, and how to resolve the user at your resource authorization server. Table of Contents How XAA in OIDC works Analyzing the ID-JAG claims XAA implementation checklist for OIDC-federated applications Mapping user identity from iss and sub Validating the ID-JAG and resolving the user Issuing the access token Updating authorization server metadata Making cross-application requests from your OIDC app securely Configure your XAA OIDC Resource app in Okta Create the OIDC requesting app for testing Create the OIDC resource app in Okta Register and configure the AI Agent in Okta Verify your Okta XAA setup on xaa.dev Configure OIDC SSO Verify the refresh token exchange for an ID-JAG token Redeem the ID-JAG for an access token at the resource authorization server Call the resource API with the access token Prove the XAA connection end-to-end Takeaways for implementors who also have SAML apps Learn more about Cross App Access, OIDC, and OAuth 2.0 How XAA in OIDC works When an agent (like one running in Claude) needs API access, it presents an Identity Assertion Authorization Grant (ID-JAG). The ID-JAG is a short-lived JSON Web Token (JWT) issued by the customer's Identity Provider (IdP) for your authorization server. Your resource server accepts the token, identifies the user, and issues your own access token, all while leaving the customer's existing OIDC integration untouched. The sequence diagram shown below describes the OIDC XAA flow. Notice that the OIDC SSO flow stays the

## Add Cross App Access to Your OIDC Requesting Application

DevFeed: [Add Cross App Access to Your OIDC Requesting Application](<https://devfeed.tech/articles/add-cross-app-access-to-your-oidc-requesting-application-15975.md>)

Original publisher: [Read original article](<https://developer.okta.com/blog/2026/08/21/xaa-oidc-requesting>)

Author: Sohail Pathan

Published: 2026-08-21T05:00:00Z

Content type: tutorial

Language: en

Sources: [Okta Developer](<https://devfeed.tech/sources/okta-developer.md>)

Topics: [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [API](<https://devfeed.tech/topics/api.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [AI Agent](<https://devfeed.tech/topics/ai-agent.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [api](<https://devfeed.tech/tags/api.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [callback](<https://devfeed.tech/tags/callback.md>), [claude](<https://devfeed.tech/tags/claude.md>), [cross-app-access](<https://devfeed.tech/tags/cross-app-access.md>), [identity](<https://devfeed.tech/tags/identity.md>), [jwt](<https://devfeed.tech/tags/jwt.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [sso](<https://devfeed.tech/tags/sso.md>), [third-party-applications](<https://devfeed.tech/tags/third-party-applications.md>), [token](<https://devfeed.tech/tags/token.md>), [xaa](<https://devfeed.tech/tags/xaa.md>)

### AI overview

This guide explains how an OIDC-federated application can use Cross App Access (XAA) to request resources from a third-party application. It describes exchanging a refresh token for an Identity Assertion Authorization Grant, exchanging that short-lived JWT for an OAuth access token, and using the access token for the resource API request.

### Source excerpt

If you currently federate enterprise customers using OpenID Connect (OIDC) and want to connect with third-party applications, this Cross App Access (XAA) guide is for you. The Identity Assertion Authorization Grant specification, the basis of XAA, was designed with OIDC in mind. Your app already holds an ID token after sign-in, but it's the refresh token from that same sign-in that you exchange to reach a third-party app. This guide details what you need to support and how to make resource requests to a third-party app using XAA. Table of Contents How XAA in OIDC works XAA implementation checklist for OIDC-federated applications Request the ID-JAG token Request the access token Call the resource API Handle token expiration Making cross-application requests from your OIDC app securely Configure your XAA OIDC requesting app in Okta Register the requesting app in Okta Register the test resource app in Okta Register your requesting app at xaa.dev Register and configure the AI Agent in Okta Validate the XAA connection end-to-end Learn more about Cross App Access, OIDC, and OAuth 2.0 How XAA in OIDC works When an agent (like one running in Claude) needs API access, it presents an Identity Assertion Authorization Grant (ID-JAG). The ID-JAG is a short-lived JSON Web Token (JWT) issued by the Identity Provider (IdP) for your app's user. You exchange the ID-JAG token for an access token to the resource application you're connecting with. The sequence diagram below describes the OIDC XAA flow and how your application fits into it. You'll handle the flow in two parts: where your application requests the ID-JAG from the IdP using the refresh token, and where your app requests the access token from the ID-JAG from the third-party resource app's authorization server. XAA implementation checklist for OIDC-federated applications Follow the guide in this section to support XAA in your OIDC application when your app connects to a third-party resource application. The XAA flow places t

## Browser automation with Pydantic AI + Playwright

DevFeed: [Browser automation with Pydantic AI + Playwright](<https://devfeed.tech/articles/browser-automation-with-pydantic-ai-playwright-21751.md>)

Original publisher: [Read original article](<http://blog.pamelafox.org/2026/08/browser-automation-with-pydantic-ai.html>)

Author: Pamela Fox (noreply@blogger.com)

Published: 2026-08-20T21:57:18Z

Content type: tutorial

Language: en

Sources: [Pamela Fox](<https://devfeed.tech/sources/pamela-fox.md>)

Topics: [Playwright](<https://devfeed.tech/topics/playwright.md>), [Pydantic](<https://devfeed.tech/topics/pydantic.md>), [Browser Automation](<https://devfeed.tech/topics/browser-automation.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Azure OpenAI](<https://devfeed.tech/topics/azure-openai.md>), [Entra ID](<https://devfeed.tech/topics/entra-id.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [OpenTelemetry](<https://devfeed.tech/topics/opentelemetry.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [api-keys](<https://devfeed.tech/tags/api-keys.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [automation](<https://devfeed.tech/tags/automation.md>), [azure-openai](<https://devfeed.tech/tags/azure-openai.md>), [browser](<https://devfeed.tech/tags/browser.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [microsoft-foundry](<https://devfeed.tech/tags/microsoft-foundry.md>), [openai](<https://devfeed.tech/tags/openai.md>), [playwright](<https://devfeed.tech/tags/playwright.md>), [python](<https://devfeed.tech/tags/python.md>)

### AI overview

This tutorial explains how to combine Pydantic AI with Playwright to build agents that browse websites programmatically. It covers connecting Pydantic AI to Microsoft Foundry models through an OpenAI-compatible endpoint, using Entra token-based authentication, and applying Playwright for browsing, manual QA, and design iteration.

### Source excerpt

When we build agents, we often want to give them the ability to browse the web: open webpages, navigate from one page to the other, and read the content of a webpage. By combining Pydantic AI with the Playwright capability from Pydantic AI Harness, we can build agents that browse the web safely and programmatically. Using Pydantic AI with Microsoft Foundry models Pydantic AI is an open-source model-agnostic framework from Pydantic for building LLM-based applications and agents. It's type-safe and supports OpenTelemetry, making it a great choice for robust production applications. We can use Pydantic-AI with Microsoft Foundry models using either API keys or Entra token-based authentication. When possible, we always recommend the keyless route, so that's what we'll demonstrate here. We use the azure-identity package to authenticate with Entra, using either local or managed identity, and get back a token provider callback function for that credential: from azure.identity.aio import AzureDeveloperCliCredential, get_bearer_token_provider credential = AzureDeveloperCliCredential() token_provider = get_bearer_token_provider(credential, "https://cognitiveservices.azure.com/.default") Then we use the OpenAI package to configure the model connection: from openai import AsyncOpenAI client = AsyncOpenAI( base_url=os.environ["AZURE_OPENAI_ENDPOINT"] + "/openai/v1", api_key=token_provider, ) model = OpenAIChatModel( model_name=os.environ["AZURE_OPENAI_CHAT_DEPLOYMENT"], provider=OpenAIProvider(openai_client=client), ) Let's explain the options used above: base_url: We point this at the OpenAI-compatible endpoint for our Foundry model. This endpoint works for Azure OpenAI models (like gpt-5.4, which this project deploys), and for cross-provider Foundry models that support the OpenAI v1 API, like Kimi-K2.7-Code. The base URL looks like "https://AZURE_OPENAI_SERVICE_NAME.openai.azure.com/openai/v1". api_key: We pass in the token provider callback function that generates OAuth2 token

## RFC 9470 explained: The OAuth step-up authentication challenge protocol

DevFeed: [RFC 9470 explained: The OAuth step-up authentication challenge protocol](<https://devfeed.tech/articles/rfc-9470-explained-the-oauth-step-up-authentication-challenge-protocol-16053.md>)

Original publisher: [Read original article](<https://workos.com/blog/rfc-9470-step-up-authentication-challenge>)

Author: WorkOS

Published: 2026-08-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [WorkOS Blog](<https://devfeed.tech/sources/workos-blog.md>)

Topics: [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>), [API](<https://devfeed.tech/topics/api.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [client](<https://devfeed.tech/topics/client.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [protocol](<https://devfeed.tech/tags/protocol.md>)

### AI overview

This article explains RFC 9470, the OAuth 2.0 Step-Up Authentication Challenge Protocol. It describes how a resource server can tell a client that the current access token does not meet the required authentication level and how the client can obtain stronger authentication, including the roles of acr_values, max_age, and auth_time.

### Source excerpt

How an API tells a client that the user needs to authenticate again, why acr_values is only a request while max_age is a requirement, and what the auth_time claim actually proves.

## Secure Your APIs: OAuth2 and JWT for Beginners

DevFeed: [Secure Your APIs: OAuth2 and JWT for Beginners](<https://devfeed.tech/articles/secure-your-apis-oauth2-and-jwt-for-beginners-8787.md>)

Original publisher: [Read original article](<https://blog.jetbrains.com/kotlin/2026/07/secure-your-apis-oauth2-and-jwt-for-beginners/>)

Author: Alina Dolgikh

Published: 2026-07-29T11:28:21Z

Content type: tutorial

Language: en

Sources: [Kotlin : A concise multiplatform language developed by JetBrains | The JetBrains Blog](<https://devfeed.tech/sources/kotlin-a-concise-multiplatform-language-developed-by-jetbrains-the-jetbrains-blog.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [backend-development](<https://devfeed.tech/topics/backend-development.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [apis](<https://devfeed.tech/tags/apis.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [backend](<https://devfeed.tech/tags/backend.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [news](<https://devfeed.tech/tags/news.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [policy](<https://devfeed.tech/tags/policy.md>), [spring](<https://devfeed.tech/tags/spring.md>), [spring-boot](<https://devfeed.tech/tags/spring-boot.md>), [tokens](<https://devfeed.tech/tags/tokens.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

This beginner tutorial explains how OAuth 2.0 and JSON Web Tokens (JWT) work together to secure APIs and Spring Boot backends. It distinguishes authentication from authorization, describes delegated access and token validation, and outlines how a resource server verifies bearer-token signatures, checks expiration, and enforces scopes and roles.

### Source excerpt

This tutorial was written by an external contributor. APIs are frequent targets for bad actors since they expose data and functionality. Securing them while maintaining usability is often one of the most challenging and time-consuming parts of API development. OAuth 2.0 and JSON Web Tokens (JWT) help make these processes more manageable and reliable. They [...]

## Announcing OAuth Device Authorization for the Appwrite CLI: Log in from your browser

DevFeed: [Announcing OAuth Device Authorization for the Appwrite CLI: Log in from your browser](<https://devfeed.tech/articles/announcing-oauth-device-authorization-for-the-appwrite-cli-log-in-from-your-browser-16420.md>)

Original publisher: [Read original article](<https://appwrite.io/blog/post/announcing-cli-device-authorization>)

Author: Chirag Aggarwal

Published: 2026-07-29T00:00:00Z

Content type: release

Language: en

Sources: [Appwrite Blog](<https://devfeed.tech/sources/appwrite-blog.md>)

Topics: [Appwrite](<https://devfeed.tech/topics/appwrite.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [browser](<https://devfeed.tech/tags/browser.md>), [cli](<https://devfeed.tech/tags/cli.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [sign-in](<https://devfeed.tech/tags/sign-in.md>), [trust](<https://devfeed.tech/tags/trust.md>)

### AI overview

Appwrite announces OAuth Device Authorization for the Appwrite CLI. The CLI opens or provides a browser URL where users confirm a device code, review requested permissions, and authorize sign-in using their existing browser session instead of entering a password in the terminal.

### Source excerpt

The Appwrite CLI now signs you in through your browser. Confirm a device code, review permissions, and authorize, without typing credentials into your terminal.

## Build a Flask App with Okta for Secure OIDC Login and Authorized API Calls

DevFeed: [Build a Flask App with Okta for Secure OIDC Login and Authorized API Calls](<https://devfeed.tech/articles/build-a-flask-app-with-okta-for-secure-oidc-login-and-authorized-api-calls-15973.md>)

Original publisher: [Read original article](<https://developer.okta.com/blog/2026/07/28/flask-oauth-web-app>)

Author: Akanksha Bhasin

Published: 2026-07-28T05:00:00Z

Content type: tutorial

Language: en

Sources: [Okta Developer](<https://devfeed.tech/sources/okta-developer.md>)

Topics: [Flask](<https://devfeed.tech/topics/flask.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [API](<https://devfeed.tech/topics/api.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Python](<https://devfeed.tech/topics/python.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [flask](<https://devfeed.tech/tags/flask.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [pkce](<https://devfeed.tech/tags/pkce.md>), [python](<https://devfeed.tech/tags/python.md>), [security](<https://devfeed.tech/tags/security.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [web-app](<https://devfeed.tech/tags/web-app.md>)

### AI overview

This tutorial explains how to build a Flask dashboard that uses Okta OpenID Connect for user sign-in and OAuth 2.0 access tokens to call a protected backend API. It also covers PKCE, custom scopes, self-service registration, and validating scopes to control API responses.

### Source excerpt

Python syntax and the flexibility of the Flask microframework make it a popular choice for quickly building web applications. While Flask provides the essentials to get you started, you'll need to tackle two critical pieces yourself: secure user authentication and authorization for your backend services. After all, how do you securely sign users into your application? And once they're signed in, how does your app fetch data from a backend service that only serves authorized requests? This tutorial shows you how to solve both. You'll build a Flask dashboard app that signs users in with Okta using OpenID Connect (OIDC). Once signed in, the app uses the resulting OAuth 2.0 access token to call a separate backend API that responds only to authorized requests. In this common pattern, a web app needs to fetch data from a protected backend service. You'll use Authlib, an OIDC client library, to configure the Authorization Code flow with Proof Key for Code Exchange (PKCE) automatically. You'll also learn how to add a custom scope to the access token and validate it on the backend to control what data the API returns. Check out the complete source code on GitHub and get started without setting it up from scratch. Table of Contents Build a Flask app with OIDC authentication Create an app integration in the Okta Admin Console Enable self-service user registration Add secure user login to a Flask application with Okta Create a basic Flask web application Configure Flask environment variables Implement the OIDC authentication logic Run the Flask OAuth web app Call a protected API with OAuth scoped tokens Build a protected users API Extend the Flask app to interact with the resource server Update the Flask UI to display protected data Test the protected API integration Learn more about OAuth and OIDC Build a Flask app with OIDC authentication In this tutorial, you'll build a simple dashboard application and learn how to: Securely sign users in to view their profile information us

## Enable Your SAML Requesting App for Cross App Access

DevFeed: [Enable Your SAML Requesting App for Cross App Access](<https://devfeed.tech/articles/enable-your-saml-requesting-app-for-cross-app-access-15972.md>)

Original publisher: [Read original article](<https://developer.okta.com/blog/2026/07/17/xaa-saml-requester>)

Author: Alisa Duncan

Published: 2026-07-17T05:00:00Z

Content type: tutorial

Language: en

Sources: [Okta Developer](<https://devfeed.tech/sources/okta-developer.md>)

Topics: [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [API](<https://devfeed.tech/topics/api.md>), [AI Agent](<https://devfeed.tech/topics/ai-agent.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [claude](<https://devfeed.tech/tags/claude.md>), [cross-app-access](<https://devfeed.tech/tags/cross-app-access.md>), [digital-signature](<https://devfeed.tech/tags/digital-signature.md>), [identity](<https://devfeed.tech/tags/identity.md>), [idp](<https://devfeed.tech/tags/idp.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [jwt](<https://devfeed.tech/tags/jwt.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [payload](<https://devfeed.tech/tags/payload.md>), [saml](<https://devfeed.tech/tags/saml.md>), [signing](<https://devfeed.tech/tags/signing.md>), [sso](<https://devfeed.tech/tags/sso.md>), [xaa](<https://devfeed.tech/tags/xaa.md>)

### AI overview

This guide explains how SAML-federated applications can use Cross App Access (XAA) to connect to third-party applications without migrating to OpenID Connect. It covers exchanging a SAML assertion for an OAuth refresh token, an ID-JAG, and an access token, along with token validation and Okta configuration.

### Source excerpt

If you currently federate enterprise customers using Security Assertion Markup Language (SAML) and want to connect with third-party applications without migrating to OpenID Connect (OIDC), this Cross App Access (XAA) guide is for you. The Identity Assertion Authorization Grant specification, the basis of XAA, was originally designed with OIDC in mind. To use it in SAML applications, you must accommodate specific security and uniqueness requirements. This guide details what you need to support and how to make resource requests to a third-party app using XAA. Table of Contents How XAA in SAML works XAA implementation checklist for SAML-federated applications Request the refresh token Request the ID-JAG token Request the access token Handle token expiration Making cross-application requests from your SAML app securely Configure your XAA SAML Requesting App in Okta Register and configure the AI Agent in Okta Test the SAML 2.0 app Validate the XAA connection end-to-end Learn more about Cross App Access, SAML, and OAuth 2.0 How XAA in SAML works When an agent (like one running in Claude) needs API access, it presents an Identity Assertion Authorization Grant (ID-JAG). The ID-JAG is a short-lived JSON Web Token (JWT) issued by the Identity Provider (IdP) for your app's user. You exchange the ID-JAG token for an access token to the resource application you're connecting with. The sequence diagram shown below describes the SAML XAA flow and how your application fits in. You'll handle the flow in two parts: where your application requests the ID-JAG from the IdP using a refresh token, and where your app requests the access token from the ID-JAG from the third-party resource app's authorization server. XAA implementation checklist for SAML-federated applications Follow the guide in this section to support XAA in your SAML application when your app connects to a third-party resource application. The XAA flow places the burden of token validation onto the IdP and the resource ap

## Keycloak 26.7.0 released

DevFeed: [Keycloak 26.7.0 released](<https://devfeed.tech/articles/keycloak-26-7-0-released-31784.md>)

Original publisher: [Read original article](<https://www.keycloak.org/2026/07/keycloak-2670-released>)

Author: Keycloak Team

Published: 2026-07-09T00:00:00Z

Content type: release

Language: en

Sources: [Keycloak Blog](<https://devfeed.tech/sources/keycloak-blog.md>)

Topics: [Keycloak](<https://devfeed.tech/topics/keycloak.md>), [API](<https://devfeed.tech/topics/api.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [Security](<https://devfeed.tech/topics/security.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [saml](<https://devfeed.tech/topics/saml.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [deprecated](<https://devfeed.tech/tags/deprecated.md>), [haproxy](<https://devfeed.tech/tags/haproxy.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [idm](<https://devfeed.tech/tags/idm.md>), [kerberos](<https://devfeed.tech/tags/kerberos.md>), [keycloak](<https://devfeed.tech/tags/keycloak.md>), [keycloak-release](<https://devfeed.tech/tags/keycloak-release.md>), [ldap](<https://devfeed.tech/tags/ldap.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [oauth-2-0](<https://devfeed.tech/tags/oauth-2-0.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [persistence](<https://devfeed.tech/tags/persistence.md>), [provisioning](<https://devfeed.tech/tags/provisioning.md>), [release](<https://devfeed.tech/tags/release.md>), [saml](<https://devfeed.tech/tags/saml.md>), [security](<https://devfeed.tech/tags/security.md>), [sso](<https://devfeed.tech/tags/sso.md>), [traefik](<https://devfeed.tech/tags/traefik.md>)

### AI overview

Keycloak 26.7.0 introduces preview support for SCIM-based user provisioning and simplified multi-cluster high availability, along with enhanced HAProxy and Traefik reverse-proxy guidance and step-up authentication for SAML clients. The release also adds a more secure, OAuth 2.0-compliant Identity Brokering API v2, while V1 remains enabled by default but is deprecated. OID4VCI improvements remain experimental.

### Source excerpt

To download the release go to Keycloak downloads. Highlights This release features new capabilities for users and administrators of Keycloak. The highlights of this release are: Automate user provisioning with the SCIM API (preview) Simplified multi-cluster high availability without external caches (preview) Enhanced reverse proxy guides with blueprints for HAProxy and Traefik Step-up authentication for SAML clients Read on to learn more about each new feature. If you are upgrading from a previous release, also review the changes listed in the upgrading guide. Security and Standards Stronger security for the Identity Brokering API The Identity Brokering API allows applications to retrieve tokens obtained from external identity providers during federated login. Version 2 of this API replaces the legacy V1 with a more secure and standards-compliant design: Client-level authorization -- access to external tokens is controlled per client using dedicated settings (Allow retrieve external tokens and an identity provider allow list) instead of assigning broker roles to individual users. Confidential clients only -- public clients are rejected, ensuring that only authenticated clients can retrieve external tokens. OAuth 2.0 compliant -- the endpoint uses POST and returns standard JSON responses with access_token, error, and error_description fields. Session-based token storage -- a new Store token in session option keeps tokens in the user session for faster access, with automatic cleanup on session expiry. Database storage remains available for persistence across sessions. V2 is now supported but disabled by default. V1 is deprecated but still enabled by default for backward compatibility. In a future release, V1 will be removed and V2 will become the default. For more information, see the Identity Brokering APIs chapter in the Server Developer Guide. Progress on Verifiable Credentials (OID4VCI) (experimental) Verifiable Credentials (OID4VCI) allow organizations to issue tampe

## EvilTokens: A phishing attack that doesn't steal your password

DevFeed: [EvilTokens: A phishing attack that doesn't steal your password](<https://devfeed.tech/articles/eviltokens-a-phishing-attack-that-doesn-t-steal-your-password-8347.md>)

Original publisher: [Read original article](<https://www.welivesecurity.com/en/cybercrime/eviltokens-phishing-doesnt-steal-password/>)

Author: Christian Ali Bravo

Published: 2026-06-15T08:55:00Z

Content type: article

Language: en

Sources: [WeLiveSecurity](<https://devfeed.tech/sources/welivesecurity.md>)

Topics: [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [account takeover](<https://devfeed.tech/topics/account-takeover.md>), [microsoft 365](<https://devfeed.tech/topics/microsoft-365.md>), [Microsoft](<https://devfeed.tech/topics/microsoft.md>), [MFA](<https://devfeed.tech/topics/mfa.md>), [Reconnaissance](<https://devfeed.tech/topics/recon.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>)

Tags: [account-takeover](<https://devfeed.tech/tags/account-takeover.md>), [attacks](<https://devfeed.tech/tags/attacks.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [cybercrime](<https://devfeed.tech/tags/cybercrime.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [microsoft-365](<https://devfeed.tech/tags/microsoft-365.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [phishing](<https://devfeed.tech/tags/phishing.md>), [process](<https://devfeed.tech/tags/process.md>), [time](<https://devfeed.tech/tags/time.md>), [tokens](<https://devfeed.tech/tags/tokens.md>)

### AI overview

EvilTokens is a phishing-as-a-service kit that abuses Microsoft 365's OAuth 2.0 device authorization flow to compromise accounts without directly stealing passwords. Victims authenticate on Microsoft's genuine login page, unknowingly approving an attacker-controlled device; the resulting access and refresh tokens can enable account takeover and business email compromise.

### Source excerpt

A phishing kit subverting Microsoft's legitimate authentication flow lets attackers break into accounts without stealing passwords or creating fake login pages

## Using Spring Boot OAuth2 for Secure Application Development

DevFeed: [Using Spring Boot OAuth2 for Secure Application Development](<https://devfeed.tech/articles/using-spring-boot-oauth2-for-secure-application-development-4460.md>)

Original publisher: [Read original article](<https://www.toptal.com/developers/spring/spring-boot-oauth2-guide>)

Author: JOE CAVAZOS, SOFTWARE DEVELOPER @ TOPTAL

Published: 2026-06-10T04:00:00Z

Content type: tutorial

Language: en

Sources: [Toptal Blog](<https://devfeed.tech/sources/toptal-blog.md>)

Topics: [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [Security](<https://devfeed.tech/topics/security.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Application Development](<https://devfeed.tech/topics/application-development.md>), [API](<https://devfeed.tech/topics/api.md>), [Code](<https://devfeed.tech/topics/code.md>), [configuration](<https://devfeed.tech/topics/configuration.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [application-development](<https://devfeed.tech/tags/application-development.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [code](<https://devfeed.tech/tags/code.md>), [development](<https://devfeed.tech/tags/development.md>), [passwords](<https://devfeed.tech/tags/passwords.md>), [security](<https://devfeed.tech/tags/security.md>), [spring](<https://devfeed.tech/tags/spring.md>), [spring-boot](<https://devfeed.tech/tags/spring-boot.md>), [systems](<https://devfeed.tech/tags/systems.md>), [tokens](<https://devfeed.tech/tags/tokens.md>), [validation](<https://devfeed.tech/tags/validation.md>)

### AI overview

This article explains how OAuth2 secures Spring Boot applications and enables services to exchange authorization tokens without exposing user passwords. It discusses token scope and expiration, and describes the more explicit security configuration model introduced with Spring Boot 3.x and Spring Security 6.

### Source excerpt

As apps grow more complex, so does managing security. Explore how OAuth2 is implemented in Spring Boot applications and the key considerations that underpin secure communication between services.

## Announcing Keycloak's Identity Summit: KEYCONF26

DevFeed: [Announcing Keycloak's Identity Summit: KEYCONF26](<https://devfeed.tech/articles/announcing-keycloak-s-identity-summit-keyconf26-31774.md>)

Original publisher: [Read original article](<https://www.keycloak.org/2026/05/keyconf26-prague-announce>)

Author: Nathalia Pinesi, Alexander Schwartz

Published: 2026-05-02T00:00:00Z

Content type: article

Language: en

Sources: [Keycloak Blog](<https://devfeed.tech/sources/keycloak-blog.md>)

Topics: [Keycloak](<https://devfeed.tech/topics/keycloak.md>), [IAM](<https://devfeed.tech/topics/iam.md>), [identity and access management](<https://devfeed.tech/topics/identity-and-access-management.md>), [OAuth 2.0](<https://devfeed.tech/topics/oauth2.md>), [OpenID connect (OIDC)](<https://devfeed.tech/topics/oidc.md>), [Single sign-on (SSO)](<https://devfeed.tech/topics/sso.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [conference](<https://devfeed.tech/tags/conference.md>), [identity](<https://devfeed.tech/tags/identity.md>), [identity-and-access-management](<https://devfeed.tech/tags/identity-and-access-management.md>), [idm](<https://devfeed.tech/tags/idm.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [kerberos](<https://devfeed.tech/tags/kerberos.md>), [keycloak](<https://devfeed.tech/tags/keycloak.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [ldap](<https://devfeed.tech/tags/ldap.md>), [oauth2](<https://devfeed.tech/tags/oauth2.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [saml](<https://devfeed.tech/tags/saml.md>), [security](<https://devfeed.tech/tags/security.md>), [sso](<https://devfeed.tech/tags/sso.md>), [summit](<https://devfeed.tech/tags/summit.md>)

### AI overview

Keycloak announces KEYCONF26, its annual Identity Summit for the Keycloak user community, taking place in Prague on October 8, 2026. The event will feature interactive sessions, practical discussions, networking, and a call for speakers and sponsors.

### Source excerpt

Our annual conference dedicated to the Keycloak user community returns, with even more content and networking opportunities than last year. It's the perfect place to interact, learn, share, and exchange insights and real-world use cases, network with fellow experts, users, and contributors. 📍 Introducing KEYCONF26 - taking place in Prague on October 8th, 2026! This year's edition of the Keycloak Identity Summit features interactive sessions, and even more opportunities to engage with the people shaping the future of identity and access management. Call for sessions The call for sessions is open until May 24th, 2026 -- we'd love to hear from you! We're looking for sessions on topics such as: Keycloak deployment and operations at scale Human and non-human identities in the world of AI OAuth2, OIDC, and evolving identity standards Security best practices and hardening EU Digital Identity Wallets and eIDAS Migration stories and real-world use cases Extending and customizing Keycloak Submit your proposal now! What to expect at KEYCONF26 Inspiring Keynote Speaker Hear from Hannah Short, Team Lead for Identity and Access Management at CERN, how they are using Keycloak as a highly performant and reliable SSO running on Kubernetes. Connect with like-minded professionals From long-time contributors to those just starting their IAM journey, KEYCONF26 is the perfect place to meet others working with identity, OAuth2, OIDC, and more. Networking lunch Our extended lunch break is designed to help you meet fellow attendees, swap ideas, and build meaningful professional connections in a relaxed setting. Business drinks Stick around after the last session for informal networking over drinks. Want to sponsor this year's Business Drink? Get in touch with us--we'd love to partner with you! Expert sessions and real-world use cases Gain practical insights into Keycloak implementation, security improvements, OAuth2 best practices, and evolving identity standards. Learn how to use EU Digital

[Next page](<https://devfeed.tech/topics/oauth2.md?cursor=WyIyMDI2LTA1LTAyVDAwOjAwOjAwKzAwOjAwIiwgImZmMmU2NmVmLWM2NjUtNDc5ZS04ZWRhLTA5OGRmMjM5M2Q2ZSJd>)