chore: remove password rotation helper
This commit is contained in:
parent
bbb40e0d46
commit
675b2b8a78
1 changed files with 0 additions and 44 deletions
44
compose.yaml
44
compose.yaml
|
|
@ -19,47 +19,3 @@ services:
|
|||
timeout: 5s
|
||||
start_period: 15s
|
||||
retries: 3
|
||||
|
||||
beszel-password-changer:
|
||||
image: python:3.11-alpine
|
||||
container_name: beszel-password-changer
|
||||
restart: "no"
|
||||
depends_on:
|
||||
beszel:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
BESZEL_EMAIL: ${BESZEL_ADMIN_EMAIL}
|
||||
BESZEL_OLD_PASSWORD: ${BESZEL_OLD_PASSWORD}
|
||||
BESZEL_NEW_PASSWORD: ${BESZEL_NEW_PASSWORD}
|
||||
command:
|
||||
- python
|
||||
- -c
|
||||
- |
|
||||
import json, os, urllib.request
|
||||
base = "http://beszel:8090"
|
||||
email = os.environ["BESZEL_EMAIL"]
|
||||
old = os.environ["BESZEL_OLD_PASSWORD"]
|
||||
new = os.environ["BESZEL_NEW_PASSWORD"]
|
||||
def auth(password):
|
||||
body = json.dumps({"identity": email, "password": password}).encode()
|
||||
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)
|
||||
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)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue