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
Sso
fluxfiles/laravel
cursor
s3
upload
laravel
file-manager
r2
fluxfiles

SSO bridge is pre-auth, so it can't use the normal 3-layer ModuleRegistry::require() — there's no Claims yet to check a per-token claim against. ModuleRegistry::requireServer($id, $license) does layers 1+2 only (installed + licensed); layer 3 becomes an explicit FLUXFILESSSOENABLED env check in...

Install
php artisan boost:add-skill fluxfiles/laravel

Save this content to: .cursor/rules/sso.md

**SSO bridge is pre-auth, so it can't use the normal 3-layer `ModuleRegistry::require()`** — there's no `Claims` yet to check a per-token claim against. `ModuleRegistry::requireServer($id, $license)` does layers 1+2 only (installed + licensed); layer 3 becomes an explicit `FLUXFILES_SSO_ENABLED` env check in each route (`SsoModule::claim()` returns `''`, per `ModuleInterface`'s contract for claim-less modules). Logins use PKCE (S256). The FluxFiles user id is the IdP `sub` by default (`FLUXFILES_SSO_USER_CLAIM`; `email` only when `email_verified`), and `FLUXFILES_SSO_CLAIMS_MAP` precedence is the map's own order, never the IdP's group order. The real JWT, once minted post-login, is sealed (AES-256-GCM) inside a one-time boot token handed to the standalone UI via a URL **fragment** (`#boot=…`, 60s TTL) rather than a query string — fragments never reach server logs — then a `POST /api/fm/sso/exchange` trades it for the real JWT over a response body, held in JS memory only, never persisted. OIDC only (no SAML).

SSO bridge is pre-auth, so it can't use the normal 3-layer ModuleRegistry::require() — there's no Claims yet to check a per-token claim against. ModuleRegistry::requireServer($id, $license) does layers 1+2 only (installed + licensed); layer 3 becomes an explicit FLUXFILES_SSO_ENABLED env check in each route (SsoModule::claim() returns '', per ModuleInterface's contract for claim-less modules). Logins use PKCE (S256). The FluxFiles user id is the IdP sub by default (FLUXFILES_SSO_USER_CLAIM; email only when email_verified), and FLUXFILES_SSO_CLAIMS_MAP precedence is the map's own order, never the IdP's group order. The real JWT, once minted post-login, is sealed (AES-256-GCM) inside a one-time boot token handed to the standalone UI via a URL fragment (#boot=…, 60s TTL) rather than a query string — fragments never reach server logs — then a POST /api/fm/sso/exchange trades it for the real JWT over a response body, held in JS memory only, never persisted. OIDC only (no SAML).

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.
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
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource