def patch(self, meta_rule_id=None, user_id=None): """Update a meta rule :param meta_rule_id: Meta rule ID :param user_id: user ID who do the request :request body: patch = { "name": "name of the meta rule", "subject_categories": ["subject_category_id1", "subject_category_id2"], "object_categories": ["object_category_id1"], "action_categories": ["action_category_id1"] } :return: { "meta_rules": { "meta_rule_id1": { "name": "name of the meta rule", "subject_categories": ["subject_category_id1", "subject_category_id2"], "object_categories": ["object_category_id1"], "action_categories": ["action_category_id1"] }, } } :internal_api: set_meta_rules """ try: data = ModelManager.set_meta_rule( user_id=user_id, meta_rule_id=meta_rule_id, value=request.json) except Exception as e: logger.error(e, exc_info=True) return {"result": False, "error": str(e)}, 500 return {"meta_rules": data}
def set_meta_rule(meta_rule_id, value=None): from python_moondb.core import ModelManager if not value: value = { "name": "MLS_meta_rule", "description": "test", "subject_categories": ["user_security_level_id_1"], "object_categories": ["vm_security_level_id_1"], "action_categories": ["action_type_id_1"] } return ModelManager.set_meta_rule(user_id=None, meta_rule_id=meta_rule_id, value=value)
def set_meta_rule(meta_rule_id, value=None): from python_moondb.core import ModelManager if not value: action_category_id = builder.create_action_category( "action_category_id1" + uuid4().hex) subject_category_id = builder.create_subject_category( "subject_category_id1" + uuid4().hex) object_category_id = builder.create_object_category( "object_category_id1" + uuid4().hex) value = { "name": "MLS_meta_rule", "description": "test", "subject_categories": [subject_category_id], "object_categories": [object_category_id], "action_categories": [action_category_id] } return ModelManager.set_meta_rule(user_id=None, meta_rule_id=meta_rule_id, value=value)