Routers Reference
ProtectedRouter
missil.ProtectedRouter
ProtectedRouter(*, prefix='', rules, tags=None, dependencies=None, default_response_class=JSONResponse, responses=None, callbacks=None, routes=None, redirect_slashes=True, default=None, dependency_overrides_provider=None, route_class=APIRoute, on_startup=None, on_shutdown=None, lifespan=None, deprecated=None, include_in_schema=True, generate_unique_id_function=generate_unique_id)
Bases: APIRouter
FastAPI router with built-in access rules applied to all its routes.
FastAPI APIRouter with a mandatory access rules parameter.
All routes added to this router automatically require the declared rules, avoiding repetition across endpoints that share the same access policy.
Example:
areas = missil.make_areas(bearer, "finances")
router = missil.ProtectedRouter(rules=[areas["finances"].READ])
All other parameters are identical to FastAPI's APIRouter.
| PARAMETER | DESCRIPTION |
|---|---|
rules
|
One or more Missil AccessRule objects to enforce on every route.
TYPE:
|