Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Df Oauth Laravel Package

dreamfactory/df-oauth

DreamFactory OAuth package that adds OAuth-based authentication to DreamFactory APIs, letting clients sign in with external providers and obtain secure access tokens. Integrates with DreamFactory users and roles for controlled API access.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. dreamfactory/df-oauth is not a general-purpose Laravel package — it is a first-party module of the DreamFactory platform (a self-hosted, Laravel-based API gateway / governed data-access layer). It registers a service provider against df-core, ships system config, migrations, seed data, and admin-console wiring, and plugs into DreamFactory's existing multi-mode auth stack (API key, JWT, LDAP/AD, SAML, OAuth/OIDC). For a TPM, the correct framing is: this is a plugin you adopt because you are adopting DreamFactory, not a library you drop into an existing Laravel app. Pulling it into a vanilla Laravel codebase drags in df-core and effectively the whole platform.

Integration feasibility.

  • High if DreamFactory is already in the stack: composer require, run platform migrations/setup, configure an OAuth/OIDC provider in the admin console, map claims to DreamFactory roles.
  • Low-to-medium standalone: you would be making an architecture decision to run DreamFactory, with df-oauth as one component of that decision.

Technical risk.

  • Coupling risk: hard dependency on a specific df-core major/minor line; the package is versioned in lockstep with the platform, so independent upgrades are not realistic.
  • Signal risk: 6 stars, 0 dependents, no external consumers. There is no community validation of edge cases, no third-party forks, and effectively a single-vendor bus factor.
  • Data anomaly: the reported release date (2026-05-27) is in the future relative to most evaluation windows — verify against Packagist/GitHub tags before planning a pin.
  • Security surface: this is the authentication and token-issuance boundary. Redirect-URI validation, PKCE enforcement, scope handling, token/refresh-token storage, and key rotation are all critical and all inherited from a low-visibility codebase.
  • Licensing nuance: Apache-2.0 on the package, but commercial tiers of DreamFactory may gate adjacent functionality — confirm the feature matrix before assuming parity.

Key questions for the vendor/repo.

  1. Which DreamFactory and Laravel/PHP versions are supported, and what is the support window?
  2. Is df-oauth an OAuth provider (IdP for DreamFactory APIs), an OAuth client (federating to Okta/Entra/Keycloak), or both?
  3. Which grants and endpoints are implemented — authorization code + PKCE, client credentials, refresh, introspection, revocation, discovery/JWKS?
  4. Where are clients, tokens, and signing keys persisted, and is there a rotation story?
  5. What is the test coverage and the security-disclosure process?
  6. Does role/claim mapping into DreamFactory RBAC work out of the box?

Integration Approach

Stack fit. Only a fit if the target stack is DreamFactory 4.x/5.x on a supported PHP/Laravel runtime, Composer-managed, with the platform already serving or slated to serve APIs. If the requirement is "add OIDC login to our Laravel app," a purpose-built package (Laravel Socialite, openid-client, laravel/passport) is the correct choice and df-oauth is a category error.

Migration path. The realistic sequence is auth modernization inside DreamFactory, not a lift-and-shift:

  1. Inventory current DreamFactory auth modes (static API keys, local JWT) and the apps/scripts that hold them.
  2. Stand up a non-production IdP tenant (Okta/Entra/Keycloak) and register DreamFactory as a client.
  3. Enable df-oauth, configure discovery URL, client ID/secret, redirect URIs, scopes.
  4. Map IdP claims/groups to DreamFactory roles; validate least-privilege on a read-only API.
  5. Dual-run: legacy keys remain valid while pilot clients move to OAuth.
  6. Revoke legacy keys per consumer and decommission.

Compatibility. Pin dreamfactory/dreamfactory and df-core to explicit versions in composer.lock; validate the PHP/Laravel matrix against your base image. Review the package's migrations and seeders for collisions with existing system tables and for idempotency on re-run. Confirm whether it mutates system_config in ways that complicate rollback.

Sequencing. PoC (2–3 weeks) → security review of token flows (1–2 weeks, parallel) → pilot with one low-risk internal app → staged rollout by consumer group → legacy key sunset with a dated deadline. Do not sequence this ahead of a platform upgrade; do it on a frozen platform version.

Operational Impact

Maintenance. Owned and released by DreamFactory; you inherit their cadence. With zero dependents there is no community patch stream — if upstream stalls, your only options are a paid support contract or an internal fork you must maintain against df-core changes. Budget for a named owner and a quarterly upgrade-and-retest cycle.

Support. Commercial support from DreamFactory is the primary channel; GitHub issues are secondary and low-traffic. Escalation paths should be established contractually before this becomes auth-critical infrastructure.

Scaling. Token validation scales well if you keep it stateless (JWT signature check against cached JWKS). Token issuance, introspection, and any database-backed token store are the bottlenecks — expect additional DB writes per login/refresh and per-request lookups if introspection is enabled. Cache JWKS aggressively, set short access-token TTLs with refresh, and rate-limit the token endpoint. Auth now sits on the critical path of every API call: size it accordingly.

Failure modes to design for.

  • IdP outage → fail closed; have a documented break-glass path (time-boxed static credentials, audited).
  • Signing-key rotation without JWKS refresh → mass 401s; monitor kid mismatches.
  • Clock skew between IdP and DreamFactory nodes → intermittent token rejection.
  • Misconfigured redirect URI or scope → silent login failures that look like app bugs.
  • Platform upgrade re-running migrations/seeders → config drift.
  • Over-broad scope grants → privilege escalation via a compromised client.
  • Tokens or client secrets leaking into DreamFactory logs — verify redaction.

Ramp-up. A mid-level backend engineer needs roughly 1–2 weeks to become productive (DreamFactory service/config model, Laravel service-provider conventions, OAuth/OIDC flows) and 3–4 weeks to be genuinely safe operating the auth boundary. Add dedicated security-review time before production. Document the token lifecycle, role-mapping table, and rollback procedure as first-class runbooks — with a 6-star dependency, institutional knowledge is the real redundancy.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console