rebuild(stage-9): deliver deterministic intelligent screening
This commit is contained in:
@@ -65,3 +65,15 @@ def require_smart_access(
|
||||
|
||||
|
||||
SmartAccessPrincipal = Annotated[Principal, Depends(require_smart_access)]
|
||||
|
||||
|
||||
def require_smart_write(
|
||||
request: Request,
|
||||
principal: CsrfPrincipal,
|
||||
) -> Principal:
|
||||
if not request.app.state.container.memberships.can_use_smart_features(principal):
|
||||
raise AppError("membership_required", "该功能仅对会员开放。", 403)
|
||||
return principal
|
||||
|
||||
|
||||
SmartWritePrincipal = Annotated[Principal, Depends(require_smart_write)]
|
||||
|
||||
Reference in New Issue
Block a user