feat(ui): replace configuration editors with graphical forms
This commit is contained in:
+3
-2
@@ -390,15 +390,16 @@ def create_app(settings: Settings | None = None):
|
||||
return iso_command(unpack(connection.execute("SELECT * FROM iso_records WHERE id=?",(iso_id,)).fetchone()),connection)
|
||||
|
||||
@app.get("/api/v1/secrets")
|
||||
def secrets_list(user=Depends(roles())):
|
||||
def secrets_list(user=Depends(roles("author","operator"))):
|
||||
with db.connection() as connection:
|
||||
return [dict(r) for r in connection.execute("SELECT id,name,created_at FROM secrets ORDER BY name")]
|
||||
|
||||
@app.post("/api/v1/secrets",status_code=201)
|
||||
def create_secret(payload:SecretCreate,user=Depends(roles())):
|
||||
value = security.hash_installer_password(payload.value) if payload.kind == "root_password" else payload.value
|
||||
with db.connection(write=True) as connection:
|
||||
secret_id = new_id("secret")
|
||||
connection.execute("INSERT INTO secrets VALUES(?,?,?,?)",(secret_id,payload.name,security.encrypt(payload.value),now_iso()))
|
||||
connection.execute("INSERT INTO secrets VALUES(?,?,?,?)",(secret_id,payload.name,security.encrypt(value),now_iso()))
|
||||
audit(connection,user["id"],"secret.created",secret_id)
|
||||
return {"id":secret_id,"name":payload.name}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user