diff options
| author | LV-426 <lv-426@taproot.org.il> | 2014-12-02 02:07:23 +0200 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2014-12-02 02:34:28 +0200 |
| commit | 4730452ec0f922a8bb26690e5262efa3bb56f4eb (patch) | |
| tree | 7ea8580400d0d1cdffdc021a92f6b2072f1ed49c | |
| parent | 7a5e94b48165f76fd86a82fc90a466cb683ccc94 (diff) | |
REST /login,/logout paths
| -rw-r--r-- | src-py/rhizi_api.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src-py/rhizi_api.py b/src-py/rhizi_api.py index 7391c90f..8df36b56 100644 --- a/src-py/rhizi_api.py +++ b/src-py/rhizi_api.py @@ -192,4 +192,34 @@ def monitor__server_info(): "time: " + dt.strftime("%H:%M:%S") + "<br>" + \ "</p></body></html>" +def index(): + return render_template('index.html') +def login(): + + def sanitize_input(req): + req_json = request.get_json() + u = req_json['username'] + p = req_json['password'] + return u, p + + if request.method == 'POST': + try: + u, p = sanitize_input(request) + crypt_util.validate_login(flask.current_app.rz_config, u, p) + except Exception as e: + log.warn('login: unauthorized: user: %s' % (u)) + abort(401) + + # login successful + session['username'] = u + log.debug('login: success: user: %s' % (u)) + return redirect('/index') + + if request.method == 'GET': + return render_template('login.html') + +def logout(): + # remove the username from the session if it's there + session.pop('username', None) + return redirect(url_for('login')) |
