Add separate permission for AMS RFID re-read (Issue #204)

- Add new `printers:ams_rfid` permission for re-reading AMS RFID tags
- Allows granting RFID re-read access without full printer control
- Operators group includes this permission by default
- Previously used `printers:control` which grants broader access
- Permission available in Settings > Users > Group Editor

Closes #204
This commit is contained in:
maziggy
2026-02-01 11:39:37 +01:00
parent d715132a84
commit ade4792eac
7 changed files with 20 additions and 12 deletions
+1 -1
View File
@@ -1689,7 +1689,7 @@ async def refresh_ams_slot(
printer_id: int,
ams_id: int,
slot_id: int,
_=RequirePermissionIfAuthEnabled(Permission.PRINTERS_CONTROL),
_=RequirePermissionIfAuthEnabled(Permission.PRINTERS_AMS_RFID),
db: AsyncSession = Depends(get_db),
):
"""Re-read RFID for an AMS slot (triggers filament info refresh)."""
+3
View File
@@ -21,6 +21,7 @@ class Permission(str, Enum):
PRINTERS_DELETE = "printers:delete"
PRINTERS_CONTROL = "printers:control" # Start/stop/pause/resume prints
PRINTERS_FILES = "printers:files" # Send files to printer
PRINTERS_AMS_RFID = "printers:ams_rfid" # Re-read AMS RFID tags
# Archives
ARCHIVES_READ = "archives:read"
@@ -159,6 +160,7 @@ PERMISSION_CATEGORIES = {
Permission.PRINTERS_DELETE,
Permission.PRINTERS_CONTROL,
Permission.PRINTERS_FILES,
Permission.PRINTERS_AMS_RFID,
],
"Archives": [
Permission.ARCHIVES_READ,
@@ -305,6 +307,7 @@ DEFAULT_GROUPS = {
Permission.PRINTERS_DELETE.value,
Permission.PRINTERS_CONTROL.value,
Permission.PRINTERS_FILES.value,
Permission.PRINTERS_AMS_RFID.value,
# Archives - own items only
Permission.ARCHIVES_READ.value,
Permission.ARCHIVES_CREATE.value,