def wifidog_auth():
    auth = Auth(
        user_agent=flask.request.user_agent.string,
        stage=flask.request.args.get('stage'),
        ip=flask.request.args.get('ip'),
        mac=flask.request.args.get('mac'),
        token=flask.request.args.get('token'),
        incoming=flask.request.args.get('incoming'),
        outgoing=flask.request.args.get('outgoing'),
        gateway_id=flask.request.args.get('gw_id')
    )

    (auth.status, auth.messages) = auth.process_request()

    db.session.add(auth)
    db.session.commit()

    return ("Auth: %s\nMessages: %s\n" % (auth.status, auth.messages), 200)
def wifidog_auth():
    auth = Auth(
        user_agent=flask.request.user_agent.string,
        stage=flask.request.args.get('stage'),
        ip=flask.request.args.get('ip'),
        mac=flask.request.args.get('mac'),
        token=flask.request.args.get('token'),
        incoming=flask.request.args.get('incoming'),
        outgoing=flask.request.args.get('outgoing'),
        gateway_id=flask.request.args.get('gw_id')
    )

    (auth.status, auth.messages) = auth.process_request()

    db.session.add(auth)
    db.session.commit()

    def generate_point(measurement):
        return {
            "measurement": 'auth_%s' % measurement,
            "tags": {
                "source": "auth",
                "network_id": auth.gateway.network_id,
                "gateway_id": auth.gateway_id,
                "user_agent": auth.user_agent,
                "stage": auth.stage,
                "ip": auth.ip,
                "mac": auth.mac,
                "token": auth.token,
            },
            "time": auth.created_at,
            "fields": {
                "value": getattr(auth, measurement),
            }
        }

    points = [generate_point(m) for m in [ 'incoming', 'outgoing' ]]
    influx.write_points(points)

    return ("Auth: %s\nMessages: %s\n" % (auth.status, auth.messages), 200)
Exemple #3
0
def registr():
    user_id = int(request.args.get('id'))
    email = request.args.get('email')
    existing_user = User.query.filter_by(email=email).first()
    if existing_user is not None:
        return json.jsonify({
            'error': 'Пользователь с таким email уже существует',
            'data': None
        })
    name = request.args.get('name')
    password_token = int(request.args.get('passwordToken'))
    typee = int(request.args.get('type'))
    auth = Auth(user_id, password_token)
    user = User(user_id, email, name, typee, None, None, None, None)
    db.session.add(auth)
    db.session.add(user)
    db.session.commit()
    login_user(user, remember=False)
    return json.jsonify({'error': None, 'data': user.to_json()})
Exemple #4
0
def auth_add():
    """
    添加权限
    """
    form = AuthForm()
    if request.method == 'GET':
        form.submit.label.text = '添加'

    if form.validate_on_submit():
        data = form.data
        auth = Auth(
            name=data['name'],
            url=data['url']
        )
        db.session.add(auth)
        db.session.commit()
        flash('权限添加成功', category='ok')
        return redirect(url_for('admin.auth_add'))
    return render_template("admin/auth_add.html", form=form)
Exemple #5
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        from sqlalchemy import or_
        count = Auth.query.filter(
            or_(Auth.name == form.name.data,
                Auth.url == form.url.data)).count()
        if count:
            flash("此权限名或此链接已经存在", "fail")
        else:
            auth = Auth(name=form.name.data, url=form.url.data)
            db.session.add(auth)
            db.session.commit()
            flash("添加权限", "succeed")
            return redirect(url_for("admin.auth_add"))
    return render_template("admin/auth_add.html",
                           title="添加权限",
                           btn="添加",
                           form=form)
Exemple #6
0
def auth_add():
    form = AuthFrom()
    if form.validate_on_submit():
        data = form.data
        if Auth.query.filter_by(url=data['url']).count() == 1:
            flash('权限链接地址已存在!', category='err')
            return redirect(url_for('admin.auth_add'))
        if Auth.query.filter_by(name=data['name']).count() == 1:
            flash('权限名称已存在!', category='err')
            return redirect(url_for('admin.auth_add'))
        auth = Auth(name=data["name"], url=data["url"])
        db.session.add(auth)
        db.session.commit()
        flash("添加权限成功!", "ok")
        oplog = Oplog(admin_id=session["admin_id"],
                      ip=request.remote_addr,
                      reason="添加权限%s" % data['name'])
        db.session.add(oplog)
        db.session.commit()
    return render_template("admin/auth_add.html", form=form)
Exemple #7
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth = Auth.query.filter_by(name=data['name']).count()
        if auth == 1:
            flash("权限名称已经存在!", 'err')
            return redirect(url_for('admin.auth_add'))

        auth = Auth(name=data['name'], url=data['url'])
        db.session.add(auth)
        db.session.commit()
        flash("添加权限成功!", "ok")
        oplog = Oplog(admin_id=session['admin_id'],
                      ip=request.remote_addr,
                      reason="添加权限%s" % data['name'])
        db.session.add(oplog)
        db.session.commit()
        redirect(url_for('admin.auth_add'))
    return render_template('admin/auth_add.html', form=form)
Exemple #8
0
def auth_add():
    """
    添加权限
    """
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data

        auth_count = Auth.query.filter_by(url=data['url']).count()
        # 标签是否已经存在
        if auth_count == 1:
            flash('该权限已经存在', 'error')
            return redirect(url_for('admin.auth_add'))

        auth = Auth(name=data['name'], url=data['url'])
        db.session.add(auth)
        db.session.commit()
        flash('权限添加成功', 'success')
        return redirect(url_for('admin.auth_add'))
    return render_template('admin/auth_add.html', form=form)
Exemple #9
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth = Auth.query.filter_by(name=data["name"]).count()
        if auth == 1:
            flash("auth name exit", "error")
            return redirect(url_for("admin.auth_add"))
        else:
            auth = Auth(name=data["name"], url=data["url"])
            db.session.add(auth)
            db.session.commit()
            flash("auth add success", "ok")
            oplog = OpLog(admin_id=session["aid"],
                          ip=request.remote_addr,
                          reason="add auth " + auth.name)
            db.session.add(oplog)
            db.session.commit()
            return redirect(url_for("admin.auth_add"))
    return render_template("admin/auth_add.html", form=form)
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth = Auth(
            name=data["name"],
            url=data["url"]
        )
        db.session.add(auth)
        oplog = Oplog(
            admin_id=session["admin_id"],
            ip=request.remote_addr,
            reason="添加权限控制 "
                   "name: {0} "
                   "url: {1}".format(auth.name, auth.url)
        )
        db.session.add(oplog)
        db.session.commit()
        flash("权限添加成功", "ok")
        return redirect(url_for("admin.auth_add"))
    return render_template("admin/auth_add.html", form=form)
Exemple #11
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth = Auth.query.filter_by(name=data["name"]).first()
        if auth:
            flash("权限已经存在", "error")
            return redirect(url_for("admin.auth_add"))
        auth = Auth(name=data['name'], url=data["url"])
        db.session.add(auth)
        db.session.commit()
        flash("标签权限成功", "success")
        # print(type(session['admin_id']))
        oplog = OpLog(
            admin_id=session["admin_id"],
            ip=request.remote_addr,  # 获取ip地址
            reason="添加权限 %s" % data["name"])
        db.session.add(oplog)
        db.session.commit()
        return redirect(url_for("admin.auth_add"))
    return render_template("admin/auth_add.html", form=form)
Exemple #12
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth = Auth(
            name=data["name"],
            url=data["url"],
        )
        db.session.add(auth)
        db.session.commit()
        flash("添加权限成功", "ok")
        # 将操作加入到管理员的操作日志中
        oplog = OpLog(
            admin_id=session["admin_id"],
            # 获取管理员登录ip
            ip=request.remote_addr,
            reason="添加权限:%s" % data["name"]
        )
        db.session.add(oplog)
        db.session.commit()
    return render_template("admin/auth_add.html", form=form)
Exemple #13
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        name_count = Auth.query.filter_by(url=data['url']).count()
        url_count = Auth.query.filter_by(name=data['name']).count()
        if name_count == 1:
            flash("权限连接已存在", 'err')
            return redirect(url_for("admin.auth_add"))
        if url_count == 1:
            flash("权限名称已存在", 'err')
            return redirect(url_for("admin.auth_add"))
        auth = Auth(
            name=data['name'],
            url=data['url']
        )
        db.session.add(auth)
        db.session.commit()
        flash("添加权限成功", 'ok')
        return redirect(url_for("admin.auth_add"))

    return render_template("admin/auth_add.html", form=form)
Exemple #14
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth = Auth(
            name=data["name"],
            url=data["url"]
        )
        # 保存操作
        oplog = Oplog(
            admin_id=session['admin_id'],
            ip=request.remote_addr,
            reason="添加权限%s" % auth.name
        )
        db.session.add(oplog)
        db.session.commit()
        # 保存
        db.session.add(auth)
        db.session.commit()
        flash("添加权限成功", 'ok')
        return redirect(url_for('admin.auth_add'))
    return render_template("admin/auth_add.html", form=form)
Exemple #15
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():

        name_count = Auth.query.filter_by(name=form.data["name"]).count()
        url_count = Auth.query.filter_by(url=form.data["url"]).count()

        if name_count == 1 and auth.name != data["name"]:
            flash("权限名称已经存在!", "err")
            return redirect(url_for('admin.auth_edit', id=id))

        if url_count == 1 and auth.url != data["url"]:
            flash("权限地址已经存在!", "err")
            return redirect(url_for('admin.auth_edit', id=id))

        auth = Auth(name=form.data["name"], url=form.data["url"])
        db.session.add(auth)
        db.session.commit()
        flash("添加权限成功!", "ok")

        recod = "添加权限-%s" % (form.data["name"])
        oplog_handle(recod)
    return render_template("admin/auth_add.html", form=form)
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth_count = Auth.query.filter_by(name=data["name"]).count()
        if auth_count == 1:
            flash("权限名称已存在", "Error")
            return redirect(url_for("admin.auth_add"))
        auth = Auth(name=data["name"], url=data["url"])

        db.session.add(auth)
        db.session.commit()
        flash("添加权限成功", "OK")

        # 添加操作日志
        operatelog = OperateLog(admin_id=session["admin_id"],
                                ip=request.remote_addr,
                                reason="添加权限:" + data["name"])

        db.session.add(operatelog)
        db.session.commit()
        return redirect(url_for("admin.auth_add"))
    return render_template("admin/auth_add.html", form=form)
Exemple #17
0
def auth_add():
    form = AuthForm()
    # 验证表单
    if form.validate_on_submit():
        data = form.data
        if Auth.query.filter(or_(Auth.name==data['name'], Auth.url==data['url'])).all():
            flash('已有该权限,请不要重复添加', 'err')
            return redirect(url_for('admin.auth_add'))
        new_auth = Auth(
            name=data['name'],
            url=data['url']
        )
        with db.auto_commit():
            db.session.add(new_auth)

            # 记录添加权限操作
            new_adminlog = OpLog(
                    admin_id=session['id'],
                    ip=session['login_ip'],
                    reason="添加权限: "+new_auth.name)
            db.session.add(new_adminlog)
        return redirect(url_for('admin.auth_add'))
    return render_template("admin/auth_add.html", form=form)
Exemple #18
0
def auth_add():
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        auth_count = Auth.query.filter_by(name=data['name']).count()
        if auth_count >= 1:
            flash('权限已存在!', 'err')
            return redirect(url_for('admin.auth_add'))
        auth = Auth(
            name=data['name'],
            url=data['url']
        )
        oplog = Oplog(
            admin_id=session['admin_id'],
            reason='添加一个权限:%s' % data['name'],
            ip=request.remote_addr
        )
        db.session.add(auth)
        db.session.add(oplog)
        db.session.commit()
        flash('添加权限成功!', 'ok')
        return redirect(url_for('admin.auth_add'))
    return render_template("admin/auth_add.html", form=form)
Exemple #19
0
def auth_add():
    """添加权限"""
    form = AuthForm()
    if form.validate_on_submit():
        data = form.data
        # 这么做避免在添加已存在的权限地址时发生sqlalchemy.exc.IntegrityError: (_mysql_exceptions.IntegrityError)
        name_count = Auth.query.filter_by(name=data["name"]).count()
        # 已存在该权限
        if name_count == 1:
            flash("权限名称已经存在,请重新编辑!", "err")
            return redirect(url_for('admin.auth_add'))
        url_count = Auth.query.filter_by(url=data["url"]).count()
        if url_count == 1:
            flash("权限地址已经存在,请重新编辑!", "err")
            return redirect(url_for('admin.auth_add'))
        auth = Auth(
            name=data['name'],
            url=data['url']
        )
        db.session.add(auth)
        db.session.commit()
        flash('添加权限成功!', 'ok')
        return redirect(url_for('admin.auth_add'))
    return render_template("admin/auth_add.html", form=form)
Exemple #20
0
def auth_list(page=0):
    if not page:
        page = 1
    authes = Auth.get_ten_page(page=page)
    return render_template("admin/auth_list.html", authes=authes)