{"slug": "authorizer-2-4-open-source-auth-for-ai-agents-and-modern-enterprise-apps", "title": "Authorizer 2.4: Open-source auth for AI agents and modern enterprise apps", "summary": "Authorizer 2.4.0, an open-source authentication platform, has been released with new support for AI agent authentication, service accounts, and enterprise identity features. The update introduces OAuth 2.1-protected MCP endpoints, OAuth client_credentials for service accounts, and agent-to-agent delegation via token exchange. It also adds SCIM 2.0 provisioning, SAML IdP capabilities, and WebAuthn/passkey support.", "body_md": "[Product Hunt](https://www.producthunt.com/products/authorizer?launch=authorizer-2) · [GitHub](https://github.com/authorizerdev/authorizer) . [Website](https://authorizer.dev) . [Docs](https://docs.authorizer.dev)\n\nAuthorizer 2.4.0 is out.\n\nI've been working on Authorizer for a few years, and 2.4 is one of the biggest releases I've worked on so far.\n\nA big part of this release came from a simple problem:\n\n**Authentication is no longer only about users.**\n\nApplications also need to deal with services, workloads, organizations, and AI agents.\n\nAt the same time, enterprise applications still need things like SSO, SCIM, passkeys, multi-tenant identity, and fine-grained authorization.\n\nWith 2.4, I wanted Authorizer to handle both sides of that problem.\n\nThe release adds quite a lot, but these are the areas I'm most excited about:\n\nYou can see the complete list in the [2.4.0 changelog](https://github.com/authorizerdev/authorizer/blob/main/CHANGELOG.md#240---2026-08-19).\n\nOne of the biggest areas I worked on in this release is authentication for AI agents.\n\nAn agent isn't a user, but it still needs an identity.\n\nIt may need to call an API, access an MCP server, act on behalf of a user, or communicate with another agent.\n\nThat creates a different set of authentication and authorization problems.\n\nAuthorizer 2.4 adds support for:\n\nFor MCP, Authorizer can expose its MCP surface over Streamable HTTP and protect it with OAuth 2.1.\n\nTokens are audience-bound to the MCP endpoint, so a token intended for the MCP server isn't treated as a general-purpose Authorizer credential.\n\nLearn more in the [MCP documentation](https://docs.authorizer.dev/core/mcp/).\n\nNot every request comes from a person.\n\nBackground workers, services, CI jobs, Kubernetes workloads, and other systems need to authenticate too.\n\nAuthorizer 2.4 adds first-class service accounts using the OAuth `client_credentials`\n\nflow.\n\nService accounts can also use workload identity mechanisms including:\n\nThis means workloads don't necessarily have to depend on long-lived static credentials.\n\nService accounts also become first-class subjects in the authorization layer, which makes it possible to apply authorization rules to machines in much the same way as users.\n\nAnother interesting part of 2.4 is agent-to-agent delegation.\n\nAn agent can act on behalf of a user without simply receiving the user's full access.\n\nAuthorizer uses OAuth token exchange (RFC 8693) to create delegated tokens.\n\nThe resulting token carries information about the actor chain and can have a reduced scope.\n\nFor example:\n\n```\nUser\n  ↓\nAgent A\n  ↓\nAgent B\n```\n\nEach step can have fewer permissions than the previous one.\n\nThe effective scope is limited by the permissions available to the user, the agent, and the requested scope.\n\nThis makes delegation more explicit than passing around a user's original access token.\n\nThe other major part of this release is enterprise identity.\n\nAuthorizer 2.4 adds support for:\n\nOrganizations can configure their own identity providers and manage users within their own tenant.\n\nFor example, an organization can connect its existing identity provider and provision users through SCIM rather than requiring administrators to manage every user manually.\n\nAuthorizer can also act as a SAML IdP when other SaaS applications need to authenticate against it.\n\nSCIM is another area that became important for enterprise deployments.\n\nAuthorizer 2.4 supports SCIM 2.0 user provisioning as well as SCIM groups.\n\nThis allows identity providers such as Okta and Entra to provision and deprovision users.\n\nGroups can also be connected to authorization rules through OpenFGA.\n\nThat gives you a path from:\n\n```\nIdentity Provider\n      ↓\n     SCIM\n      ↓\n   Users / Groups\n      ↓\n    OpenFGA\n      ↓\nApplication permissions\n```\n\n2.4 also adds WebAuthn and passkey support.\n\nUsers can authenticate using platform authenticators such as:\n\nIt also supports FIDO2 security keys, usernameless discoverable login, and using passkeys as an MFA factor.\n\nThe MFA flow itself was also redesigned in this release.\n\nAuthentication tells you **who someone is**.\n\nAuthorization answers a different question:\n\n**What are they allowed to do?**\n\nAuthorizer 2.4 uses an embedded OpenFGA-based relationship authorization engine.\n\nThis lets you model relationships such as:\n\n```\nuser:lakhan\n    ↓ member\norganization:acme\n    ↓ owns\nproject:authorizer\n```\n\nAnd then make permission checks based on those relationships.\n\nThe FGA engine can run embedded or use an external OpenFGA store, depending on the deployment.\n\nAuthorizer 2.4 expands the public API surface across:\n\nThe goal here is fairly simple: use the interface that makes sense for your application without having to build a separate authentication layer around it.\n\nThe underlying service layer is shared across these transports.\n\nAuthorizer remains open source and self-hostable.\n\nYou can run it yourself and keep control over your authentication and authorization infrastructure.\n\nIf you want to try it, the easiest place to start is the [Getting Started guide](https://docs.authorizer.dev/getting-started/).\n\nA lot of the work in 2.4 isn't visible in a product screenshot.\n\nThere are several OAuth and security hardening changes in this release, including:\n\nThere are also breaking configuration changes in 2.4, including the requirement to provide a canonical `--url`\n\nand, for certain JWT configurations, an explicit `--encryption-key`\n\n.\n\nIf you're upgrading an existing deployment, I strongly recommend reading the [2.4.0 changelog](https://github.com/authorizerdev/authorizer/blob/main/CHANGELOG.md#240---2026-08-19) before upgrading.\n\nI've spent a lot of time working on authentication over the years.\n\nThe problems have changed.\n\nA few years ago, the main question was usually:\n\nHow do I authenticate users in my application?\n\nToday, that is only part of the problem.\n\nYou may also have:\n\nI wanted Authorizer to be useful for these cases without requiring developers to assemble a different identity product for every one of them.\n\nThat's a big reason why 2.4 ended up being such a large release.\n\nIf you're building a SaaS product, API, enterprise application, or AI-enabled application, I'd love for you to try it.\n\n**Website:** [https://authorizer.dev/](https://authorizer.dev/)\n\n**Documentation:** [https://docs.authorizer.dev/](https://docs.authorizer.dev/)\n\n**Get started:** [https://docs.authorizer.dev/getting-started/](https://docs.authorizer.dev/getting-started/)\n\n**GitHub:** [https://github.com/authorizerdev/authorizer](https://github.com/authorizerdev/authorizer)\n\n**What's new in 2.4.0:** [https://github.com/authorizerdev/authorizer/blob/main/CHANGELOG.md#240---2026-08-19](https://github.com/authorizerdev/authorizer/blob/main/CHANGELOG.md#240---2026-08-19)\n\n**Release video:** [https://youtu.be/X0RA-sP8Z5I](https://youtu.be/X0RA-sP8Z5I)\n\nIf you try it, I'd genuinely like to hear what works, what doesn't, and what you'd like to see next.\n\nAuthorizer is an open-source authentication and authorization platform for modern applications.\n\nIt provides authentication, authorization, enterprise SSO, passkeys, SCIM, organizations, machine-to-machine authentication, and APIs across GraphQL, REST, gRPC, and MCP.\n\n**GitHub:** [https://github.com/authorizerdev/authorizer](https://github.com/authorizerdev/authorizer)\n\n**Website:** [https://authorizer.dev/](https://authorizer.dev/)", "url": "https://wpnews.pro/news/authorizer-2-4-open-source-auth-for-ai-agents-and-modern-enterprise-apps", "canonical_source": "https://dev.to/lakhansamani/authorizer-24-open-source-auth-for-ai-agents-and-modern-enterprise-apps-138c", "published_at": "2026-09-02 06:32:07+00:00", "updated_at": "2026-09-02 06:52:30.216421+00:00", "lang": "en", "topics": ["developer-tools", "ai-agents", "ai-infrastructure"], "entities": ["Authorizer", "MCP", "OAuth 2.1", "SCIM 2.0", "SAML", "WebAuthn", "OpenFGA", "Okta"], "alternates": {"html": "https://wpnews.pro/news/authorizer-2-4-open-source-auth-for-ai-agents-and-modern-enterprise-apps", "markdown": "https://wpnews.pro/news/authorizer-2-4-open-source-auth-for-ai-agents-and-modern-enterprise-apps.md", "text": "https://wpnews.pro/news/authorizer-2-4-open-source-auth-for-ai-agents-and-modern-enterprise-apps.txt", "jsonld": "https://wpnews.pro/news/authorizer-2-4-open-source-auth-for-ai-agents-and-modern-enterprise-apps.jsonld"}}