fix: rotate regular and superuser credentials

This commit is contained in:
sascha 2026-09-09 09:57:37 +02:00
parent be31212508
commit bbb40e0d46

View file

@ -45,11 +45,21 @@ services:
req = urllib.request.Request(base + "/api/collections/users/auth-with-password", data=body, headers={"Content-Type": "application/json"})
with urllib.request.urlopen(req, timeout=10) as response:
return json.load(response)
session = auth(old)
record_id = session["record"]["id"]
body = json.dumps({"password": new, "passwordConfirm": new}).encode()
req = urllib.request.Request(base + "/api/collections/users/records/" + record_id, data=body, method="PATCH", headers={"Authorization": session["token"], "Content-Type": "application/json"})
with urllib.request.urlopen(req, timeout=10) as response:
updated = json.load(response)
verified = auth(new)
print(json.dumps({"password_changed": updated.get("id") == record_id, "new_login_ok": bool(verified.get("token"))}), flush=True)
user_session = auth(old)
super_body = json.dumps({"identity": email, "password": old}).encode()
super_req = urllib.request.Request(base + "/api/collections/_superusers/auth-with-password", data=super_body, headers={"Content-Type": "application/json"})
with urllib.request.urlopen(super_req, timeout=10) as response:
super_session = json.load(response)
update = json.dumps({"password": new, "passwordConfirm": new}).encode()
user_req = urllib.request.Request(base + "/api/collections/users/records/" + user_session["record"]["id"], data=update, method="PATCH", headers={"Authorization": super_session["token"], "Content-Type": "application/json"})
with urllib.request.urlopen(user_req, timeout=10) as response:
user_updated = json.load(response)
super_req = urllib.request.Request(base + "/api/collections/_superusers/records/" + super_session["record"]["id"], data=update, method="PATCH", headers={"Authorization": super_session["token"], "Content-Type": "application/json"})
with urllib.request.urlopen(super_req, timeout=10) as response:
super_updated = json.load(response)
user_verified = auth(new)
super_body = json.dumps({"identity": email, "password": new}).encode()
super_req = urllib.request.Request(base + "/api/collections/_superusers/auth-with-password", data=super_body, headers={"Content-Type": "application/json"})
with urllib.request.urlopen(super_req, timeout=10) as response:
super_verified = json.load(response)
print(json.dumps({"user_changed": bool(user_updated.get("id")), "superuser_changed": bool(super_updated.get("id")), "user_login_ok": bool(user_verified.get("token")), "superuser_login_ok": bool(super_verified.get("token"))}), flush=True)