source/soca/cluster_web_ui/api/v1/ldap/activedirectory/group.py [216:276]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            conn.add_s(group_dn, attrs)

            users_not_added = []
            for member in group_members:
                add_member_to_group = put(config.Config.FLASK_ENDPOINT + "/api/ldap/group",
                                          headers={"X-SOCA-TOKEN": config.Config.API_ROOT_KEY},
                                          data={"group": group,
                                                "user": member,
                                                "action": "add"},
                                          verify=False) # nosec
                if add_member_to_group.status_code != 200:
                    users_not_added.append(member)

            if users_not_added.__len__() == 0:
                return {"success": True, "message": "Group created successfully"}, 200
            else:
                return {"success": True, "message": "Group created successfully but unable to add some users: " + str(users_not_added)}, 214

        except Exception as err:
            return errors.all_errors(type(err).__name__, err)


    @admin_api
    def delete(self):
        """
        Delete a LDAP group
        ---
        tags:
          - Group Management
        parameters:
          - in: body
            name: body
            schema:
              required:
                - user
              properties:
                user:
                  type: string
                  description: user of the SOCA user

        responses:
          200:
            description: Deleted user
          203:
            description: Unknown user
          400:
            description: Malformed client input
                """
        parser = reqparse.RequestParser()
        parser.add_argument('group', type=str, location='form')
        args = parser.parse_args()
        group = args["group"]
        request_user = request.headers.get("X-SOCA-USER")
        if request_user is None:
            return errors.all_errors("X-SOCA-USER_MISSING")

        if request_user == group:
            return errors.all_errors("CLIENT_OWN_RESOURCE")

        if group is None:
            return errors.all_errors("CLIENT_MISSING_PARAMETER", "group (str) parameter is required")
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



source/soca/cluster_web_ui/api/v1/ldap/openldap/group.py [192:252]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            conn.add_s(group_dn, attrs)
            users_not_added = []
            for member in group_members:
                add_member_to_group = put(config.Config.FLASK_ENDPOINT + "/api/ldap/group",
                                          headers={"X-SOCA-TOKEN": config.Config.API_ROOT_KEY},
                                          data={"group": group,
                                                "user": member,
                                                "action": "add"},
                                          verify=False) # nosec
                if add_member_to_group.status_code != 200:
                    users_not_added.append(member)

            if users_not_added.__len__() == 0:
                return {"success": True, "message": "Group created successfully"}, 200
            else:
                return {"success": True, "message": "Group created successfully but unable to add some users: " + str(users_not_added)}, 214

        except Exception as err:
            return errors.all_errors(type(err).__name__, err)


    @admin_api
    def delete(self):
        """
        Delete a LDAP group
        ---
        tags:
          - Group Management
        parameters:
          - in: body
            name: body
            schema:
              required:
                - user
              properties:
                user:
                  type: string
                  description: user of the SOCA user

        responses:
          200:
            description: Deleted user
          203:
            description: Unknown user
          400:
            description: Malformed client input
                """
        parser = reqparse.RequestParser()
        parser.add_argument('group', type=str, location='form')
        args = parser.parse_args()
        group = args["group"]

        request_user = request.headers.get("X-SOCA-USER")
        if request_user is None:
            return errors.all_errors("X-SOCA-USER_MISSING")

        if request_user == group:
            return errors.all_errors("CLIENT_OWN_RESOURCE")

        if group is None:
            return errors.all_errors("CLIENT_MISSING_PARAMETER", "group (str) parameter is required")
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



