def obtener_acceso_modulos(token=None): config = AssistanceModel._config() perfiles = config['api']['perfiles'] for perfil in perfiles: p = perfil['perfil'] response = warden.has_all_profiles(token, [p]) if 'profile' in response and response['profile']: return perfil['funciones'] """ se chequea el modelo para controlar si es necesario asignarle ciertas funciones """ autorizador_id = token['sub'] funciones = AssistanceModel.obtener_acceso_modulos(autorizador_id) if funciones: return funciones """ si no matcheo anteriorment entonces retorno las funciones por defecto. """ pgen = (p for p in perfiles if p['perfil'] == 'default') pdefault = next(pgen) if not pdefault or pdefault['perfil'] != 'default': raise Exception('no se encuentra perfil por defecto') return pdefault['funciones']
def _acceso_modulos_modelo(uid): return AssistanceModel.obtener_acceso_modulos(uid)