From f10299347d13202ee61094335712a9e051c66462 Mon Sep 17 00:00:00 2001 From: Mart van Santen <mart@greenhost.nl> Date: Tue, 21 Feb 2023 12:27:59 +0800 Subject: [PATCH] End-points to generate a recovery link --- backend/areas/users/user_service.py | 8 ++++++++ backend/areas/users/users.py | 7 +++++++ 2 files changed, 15 insertions(+) diff --git a/backend/areas/users/user_service.py b/backend/areas/users/user_service.py index 0e982eb7..eeb8e53a 100644 --- a/backend/areas/users/user_service.py +++ b/backend/areas/users/user_service.py @@ -34,6 +34,14 @@ class UserService: res = KratosApi.get("/admin/identities/{}".format(id)).json() return UserService.__insertAppRoleToUser(id, res) + @staticmethod + def get_recovery(id): + kratos_data = { + "identity_id": id + } + res = KratosApi.post("/admin/recovery/link", kratos_data).json() + return res + @staticmethod def post_user(data): kratos_data = { diff --git a/backend/areas/users/users.py b/backend/areas/users/users.py index 08f22c6f..0d4bf0ee 100644 --- a/backend/areas/users/users.py +++ b/backend/areas/users/users.py @@ -28,6 +28,13 @@ def get_user(id): res = UserService.get_user(id) return jsonify(res) +@api_v1.route("/users/<string:id>/recovery", methods=["GET"]) +@jwt_required() +@cross_origin() +@admin_required() +def get_user_recovery(id): + res = UserService.get_recovery(id) + return jsonify(res) @api_v1.route("/users", methods=["POST"]) @jwt_required() -- GitLab