Esempio n. 1
0
        def wrapper(*args, **kwargs):
            permission_code = AUTH_MAP_HR.get(endpoint)
            if config.LOGIN['enabled'] and \
                    not coffee.hr_permission.isPermittedToThis(context=current_user.auth_context,
                                                               permission=permission_code):
                return no_permission()

            return func(*args, **kwargs)
Esempio n. 2
0
def auth_init(app):
    # TODO 考虑统一抽出deco view的规则
    endpoint_list = filter(
        lambda endpoint: endpoint in AUTH_MAP.keys(),
        app.view_functions.keys()
    )

    endpoint_list_hr = filter(
        lambda endpoint: endpoint in AUTH_MAP_HR.keys(),
        app.view_functions.keys()
    )

    # add login deco for each view_func
    for ep in endpoint_list:
        app.view_functions[ep] = auth(ep)(app.view_functions[ep])

    for ep in endpoint_list_hr:
        app.view_functions[ep] = auth_hr(ep)(app.view_functions[ep])