Show passkey names and dates, add individual delete
Deploy Dashboard / deploy (push) Successful in 31s
Deploy Dashboard / deploy (push) Successful in 31s
This commit is contained in:
@@ -209,6 +209,8 @@ async def passkey_register_verify(request: Request, current_user: str = Depends(
|
||||
"credential_id": bytes_to_base64url(verification.credential_id),
|
||||
"public_key": bytes_to_base64url(verification.credential_public_key),
|
||||
"sign_count": verification.sign_count,
|
||||
"name": body.get("name", "Passkey"),
|
||||
"created_at": time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime()),
|
||||
})
|
||||
return {"ok": True}
|
||||
|
||||
@@ -260,7 +262,18 @@ async def passkey_login_verify(request: Request):
|
||||
|
||||
@router.get("/passkey/list")
|
||||
async def passkey_list(current_user: str = Depends(auth.get_current_user)):
|
||||
return {"count": len(auth.load_passkey_credentials())}
|
||||
creds = auth.load_passkey_credentials()
|
||||
return {"passkeys": [{"id": c["credential_id"], "name": c.get("name", "Passkey"), "created_at": c.get("created_at", "")} for c in creds]}
|
||||
|
||||
@router.post("/passkey/delete")
|
||||
async def passkey_delete(request: Request, current_user: str = Depends(auth.get_current_user)):
|
||||
body = await request.json()
|
||||
cred_id = body.get("id")
|
||||
data = auth._load_auth_data()
|
||||
creds = data.get("passkey_credentials", [])
|
||||
data["passkey_credentials"] = [c for c in creds if c["credential_id"] != cred_id]
|
||||
auth._save_auth_data(data)
|
||||
return {"ok": True}
|
||||
|
||||
@router.post("/passkey/clear")
|
||||
async def passkey_clear(current_user: str = Depends(auth.get_current_user)):
|
||||
|
||||
Reference in New Issue
Block a user