flask.session.pop

Here are the examples of the python api flask.session.pop taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

145 Examples 7

Example 1

Project: flask-xsrf Source File: flask_xsrf.py
Function: handle_token
  def handle_token(self):
    def wrapper(func):
      @wraps(func)
      def decorated(*args, **kw):
        user_id = self.user_func()
        if not user_id:
          raise XSRFTokenUserIdInvalid('UserId not valid.')
        self.token = XSRFToken(user_id=user_id, secret=self.secret)
        # parse the token string..
        request_token_string = self.parse_xsrftoken_from_request()
        token_string = session.pop(TOKEN_FORM_NAME, None)
        # validate the token string..
        self.verify_token(token_string, request_token_string)
        return func(*args, **kw)
      return decorated
    return wrapper

Example 2

Project: JARR Source File: session_mgmt.py
Function: callback
    def callback(self):
        request_token = session.pop('request_token')
        if 'oauth_verifier' not in request.args:
            return None, None, None
        oauth_session = self.service.get_auth_session(
            request_token[0],
            request_token[1],
            data={'oauth_verifier': request.args['oauth_verifier']}
        )
        info = oauth_session.get('account/verify_credentials.json').json()
        social_id = 'twitter$' + str(info.get('id'))
        login = info.get('screen_name')
        return social_id, login, None

Example 3

Project: scout Source File: views.py
Function: log_out
@login.route('/logout', methods=['POST'])
@login_required
def logout():
    logout_user()
    session.pop('google_token', None)
    flash('Logged out', 'success')
    return redirect(url_for('frontend.index'))

Example 4

Project: gae-init Source File: auth.py
def signin_oauth(oauth_app, scheme=None):
  try:
    flask.session.pop('oauth_token', None)
    save_request_params()
    return oauth_app.authorize(callback=flask.url_for(
      '%s_authorized' % oauth_app.name, _external=True, _scheme=scheme
    ))
  except oauth.OAuthException:
    flask.flash(
      'Something went wrong with sign in. Please try again.',
      category='danger',
    )
    return flask.redirect(flask.url_for('signin', next=util.get_next_url()))

Example 5

Project: Flask-WTF Source File: __init__.py
Function: validate_csrf
    def validate_csrf(self, field):
        if not self.csrf_enabled or request.is_xhr:
            return

        csrf_token = session.pop(self.csrf_session_key, None)
        is_valid = field.data and \
                   field.data == csrf_token and \
                   self.csrf_is_valid is not False

        # reset this field, otherwise stale token is displayed
        field.data = self.reset_csrf()

        # we set this flag to ensure consistent behaviour when
        # calling validate() more than once

        self.csrf_is_valid = bool(is_valid)

        if not is_valid:
            raise ValidationError, "Missing or invalid CSRF token"

Example 6

Project: burp-ui Source File: sessions.py
    def invalidate_current_session(self):
        """Ivalidate current session"""
        if 'authenticated' in session:
            session.pop('authenticated')
        id = getattr(session, 'sid', None)
        session.clear()
        return self.invalidate_session_by_id(id, False)

Example 7

Project: indico Source File: admin.py
Function: get_answer
    def _getAnswer(self):
        # We don't overwrite a previous entry - the original (admin) user should be kept there
        session.setdefault('login_as_orig_user', {
            'session_data': {k: session.pop(k) for k in session.keys() if k[0] != '_' or k in {'_timezone', '_lang'}},
            'user_id': session.user.id,
            'user_name': session.user.get_full_name(last_name_first=False, last_name_upper=False)
        })
        session.user = self._user
        session.lang = session.user.settings.get('lang')
        session.timezone = timezoneUtils.SessionTZ(self._user.as_avatar).getSessionTZ()
        return True

Example 8

Project: bepasty-server Source File: login.py
Function: post
    def post(self):
        # note: remove all session entries that are not needed for logged-out
        # state (because the code has defaults for them if they are missing).
        # if the session is empty. flask will automatically remove the cookie.
        session.pop(LOGGEDIN, None)
        session.pop(PERMISSIONS, None)
        return redirect_next_referrer('bepasty.index')

Example 9

Project: redwind Source File: admin.py
@admin.route('/login_associate')
def login_associate():
    next_url = request.args.get('next')
    cred = Credential.query.get(session.pop('credential'))
    session.pop('name')
    cred.user = flask_login.current_user
    db.session.commit()
    return redirect(next_url or '/')

Example 10

Project: docklet Source File: web.py
Function: not_authorized
@app.errorhandler(401)
def not_authorized(error):
    if "username" in session:
        if "401" in session:
            reason = session['401']
            session.pop('401', None)
            if (reason == 'Token Expired'):
                return redirect('/logout/')
        return render_template('error/401.html', mysession = session)
    else:
        return redirect('/login/')

Example 11

Project: Simblin Source File: admin.py
@admin.route('/logout')
def logout():
    """Log the admin out"""
    session.pop('logged_in', None)
    flash('You have been successfully logged out')
    #: For automatic redirection to the last visited page before login
    next = request.values.get('next', '')
    return redirect(next or url_for('main.show_posts'))

Example 12

Project: Flask-AppBuilder Source File: views.py
Function: del_key
    @classmethod
    def del_key(cls, k):
        """Matching get method for ``set_key``
        """
        k = cls.__name__ + '__' + k
        session.pop(k)

Example 13

Project: white Source File: security.py
Function: csrf_protect
@wraps
def csrf_protect(f):
    if request.method == "POST":
        token = session.pop('_csrf_token', None)
        if not token or token != request.form.get('_csrf_token'):
            abort(403)

    return f

Example 14

Project: AdminCraft Source File: views.py
Function: log_out
@admincraft.route('/logout')
def logout():
    # remove the username from the session if its there
    session.pop('username', None)
    session.pop('password', None)
    return redirect(url_for('admincraft.index'))

Example 15

Project: WAPT Source File: utils.py
def logout_user():
    """Logs out the current. This will also clean up the remember me cookie if it exists."""

    for key in ('identity.name', 'identity.auth_type'):
        session.pop(key, None)
    identity_changed.send(current_app._get_current_object(),
                          identity=AnonymousIdentity())
    _logout_user()

Example 16

Project: flask-example Source File: views.py
Function: log_out
@accounts_app.route('/logout/')
def logout():
    next = request.args.get('next', '/')
    flash(u'Logout successfully', 'success')
    session.pop('user_id', None)
    return redirect(next)

Example 17

Project: ok Source File: auth.py
Function: authorize_user
def authorize_user(user):
    if user is None:
        logger.error("Google Auth Failure - attempting to authorize None user")
        raise TypeError("Cannot login as None")
    login_user(user)
    after_login = session.pop('after_login', None)
    return redirect(after_login or url_for('student.index'))

Example 18

Project: indico Source File: controllers.py
Function: request_token
    def _request_token(self):
        form = ResetPasswordEmailForm()
        if form.validate_on_submit():
            user = form.user
            # The only case where someone would have more than one identity is after a merge.
            # And the worst case that can happen here is that we send the user a different
            # username than the one he expects. But he still gets back into his profile.
            # Showing a list of usernames would be a little bit more user-friendly but less
            # secure as we'd expose valid usernames for a specific user to an untrusted person.
            identity = next(iter(user.local_identities))
            _send_confirmation(form.email.data, 'reset-password', '.resetpass', 'auth/emails/reset_password.txt',
                               {'user': user, 'username': identity.identifier}, data=identity.id)
            session['resetpass_email_sent'] = True
            return redirect(url_for('.resetpass'))
        return WPAuth.render_template('reset_password.html', form=form, identity=None, widget_attrs={},
                                      email_sent=session.pop('resetpass_email_sent', False))

Example 19

Project: python-indieweb Source File: indieweb.py
Function: clear_auth
def clearAuth():
    """Clear both the Session cookie and any stored token data
    """
    if 'indieauth_token' in session:
        indieauth_token = session['indieauth_token']
        if db is not None:
            key = db.get('token-%s' % indieauth_token)
            if key:
                data = db.hgetall(key)
                db.delete(key)
                db.delete('token-%s' % indieauth_token)
    session.pop('indieauth_token', None)
    session.pop('indieauth_scope', None)
    session.pop('indieauth_id', None)

Example 20

Project: Tardis Source File: HttpInterface.py
Function: log_out
@app.route('/logout')
def logout():
    # remove the username from the session if it's there

    session.pop('host', None)
    return redirect(url_for('index'))

Example 21

Project: pittsburgh-purchasing-suite Source File: views.py
Function: process
@blueprint.route('/costars/processing')
@requires_roles('conductor', 'admin', 'superadmin')
def process():
    '''Push the filepath and filename into the template to do the upload via ajax

    :status 200: render the upload success template
    '''
    filepath = session.pop('filepath', None)
    filename = session.pop('filename', None)

    return render_template(
        'conductor/upload/upload_success.html', filepath=filepath, filename=filename, _delete=True
    )

Example 22

Project: Flask-WTF Source File: app.py
Function: add_comment
@app.route("/add/", methods=("POST",))
def add_comment():

    form = CommentForm()
    if form.validate_on_submit():
        comments = session.pop('comments', [])
        comments.append(form.comment.data)
        session['comments'] = comments
        flash("You have added a new comment")
        return redirect(url_for("index"))
    return index(form)

Example 23

Project: python-indieweb Source File: indieweb.py
Function: handle_auth
@app.route('/auth', methods=['GET',])
def handleAuth():
    app.logger.info('handleAuth [%s]' % request.method)
    result = False
    if db is not None:
        token = request.args.get('token')
        if token is not None:
            me = db.get('token-%s' % token)
            if me:
                data = db.hgetall(me)
                if data and data['token'] == token:
                    result = True
    if result:
        return 'valid', 200
    else:
        session.pop('indieauth_token', None)
        session.pop('indieauth_scope', None)
        session.pop('indieauth_id', None)
        return 'invalid', 403

Example 24

Project: cstar_perf Source File: controllers.py
Function: log_out
@app.route('/logout', methods=['GET','POST'])
def logout():
    for i in ['credentials','gplus_id','logged_in','bypass_csrf'] :
        try:
            session.pop(i)
        except KeyError:
            pass
    if request.method == "POST":
        return make_response(jsonify({'success':'Logged out.'}), 200)
    else:
        return redirect("/")

Example 25

Project: docklet Source File: web.py
Function: internal_server_error
@app.errorhandler(500)
def internal_server_error(error):
    logger.error(error)
    if "username" in session:
        if "500" in session and "500_title" in session:
            reason = session['500']
            title = session['500_title']
            session.pop('500', None)
            session.pop('500_title', None)
        else:
            reason = '''The server encountered something unexpected that didn't allow it to complete the request. We apologize.You can go back to
<a href="/dashboard/">dashboard</a> or <a href="/logout">log out</a>'''
            title = 'Internal Server Error'
        return render_template('error/500.html', mysession = session, reason = reason, title = title)
    else:
        return redirect('/login/')

Example 26

Project: snapshots-from-here Source File: helper.py
Function: csrf_protect
def csrf_protect(f):
    """Check CSRF."""
    @wraps(f)
    def decorated(*args, **kwargs):
        if request.method == "POST":
            token = session.pop('_csrf_token', None)
            if not token or token != request.form.get('_csrf_token'):
                abort(403)
        return f(*args, **kwargs)
    return decorated

Example 27

Project: learning-python Source File: app.py
Function: log_out
@app.route('/logout')
def logout():
    """User logout/authentication/session management."""
    session.pop('logged_in', None)
    flash('You were logged out')
    return redirect(url_for('index'))

Example 28

Project: white Source File: security.py
Function: init_user
def init_user():
    """Load user if the auth session validates."""
    try:
        user = _guest
        if 'auth' in session:
            uid = session['auth']
            user = Backend('user').find(uid)
        if user is None:
            session.pop('auth', None)
            user = _guest
    except:
        user = _guest
    g.user = user

Example 29

Project: anitya Source File: app.py
Function: log_out
@APP.route('/logout/')
@APP.route('/logout')
def logout():
    ''' Logout the user. '''
    flask.session.pop('openid')
    next_url = flask.url_for('index')
    if 'next' in flask.request.args:
        if is_safe_url(flask.request.args['next']):
            next_url = flask.request.args['next']

    return flask.redirect(next_url)

Example 30

Project: WAPT Source File: flask_login.py
    def _update_remember_cookie(self, response):
        # Don't modify the session unless there's something to do.
        if 'remember' in session:
            operation = session.pop('remember', None)

            if operation == 'set' and 'user_id' in session:
                self._set_cookie(response)
            elif operation == 'clear':
                self._clear_cookie(response)

        return response

Example 31

Project: labmanager Source File: authn.py
Function: log_out
@app.route("/logout", methods=['GET'])
@login_required
def logout():
    logout_user()
    session.pop('loggeduser', None)
    return redirect(url_for('index'))

Example 32

Project: burp-ui Source File: routes.py
Function: log_out
@view.route('/logout')
@login_required
def logout():
    if 'authenticated' in session:
        session.pop('authenticated')
    if 'language' in session:
        session.pop('language')
    session_manager.delete_session()
    logout_user()
    session.clear()
    return redirect(url_for('.home'))

Example 33

Project: oauth2client Source File: flask_util.py
Function: get_flow_for_token
def _get_flow_for_token(csrf_token):
    """Retrieves the flow instance associated with a given CSRF token from
    the Flask session."""
    flow_pickle = session.pop(
        _FLOW_KEY.format(csrf_token), None)

    if flow_pickle is None:
        return None
    else:
        return pickle.loads(flow_pickle)

Example 34

Project: sopython-site Source File: views.py
Function: log_out
@bp.route('/logout')
def logout():
    session.pop('oauth_token', None)
    logout_user()

    return redirect_for('index')

Example 35

Project: holmium.core Source File: __init__.py
Function: log_out
@bp.route("/logout")
def logout():
    if "current_user" in session:
        session.pop("current_user")
    resp = redirect(url_for("test.index"))
    resp.set_cookie("uid", "", expires=0)
    return resp

Example 36

Project: stack Source File: views.py
@app.route('/logout')
@load_project
def logout():
    """
    Logs out a project account or admin project account
    """
    g.project = None
    g.admin = None
    if 'project_id' in session:
        session.pop('project_id', None)
    if 'admin_project_id' in session:
        session.pop('admin_project_id', None)

    return redirect(url_for('index'))

Example 37

Project: lastuser Source File: helpers.py
def logout_internal():
    g.user = None
    if g.usersession:
        g.usersession.revoke()
        g.usersession = None
    session.pop('sessionid', None)
    session.pop('userid', None)
    session.pop('merge_userid', None)
    session.pop('userid_external', None)
    session.pop('avatar_url', None)
    g.lastuser_cookie.pop('sessionid', None)
    g.lastuser_cookie.pop('userid', None)
    session.permanent = False

Example 38

Project: WAPT Source File: utils.py
Function: find_redirect
def find_redirect(key):
    """Returns the URL to redirect to after a user logs in successfully.

    :param key: The session or application configuration key to search for
    """
    rv = (get_url(session.pop(key.lower(), None)) or
          get_url(current_app.config[key.upper()] or None) or '/')
    return rv

Example 39

Project: indico Source File: admin.py
    def _getAnswer(self):
        try:
            entry = session.pop('login_as_orig_user')
        except KeyError:
            raise NoReportError(_('No login-as history entry found'))

        session.user = User.get(entry['user_id'])
        session.update(entry['session_data'])
        return True

Example 40

Project: LXC-Web-Panel Source File: auth.py
Function: log_out
@mod.route('/logout')
def logout():
    session.pop('logged_in', None)
    session.pop('token', None)
    session.pop('last_activity', None)
    session.pop('username', None)
    session.pop('name', None)
    session.pop('su', None)
    flash(u'You are logged out!', 'success')
    return redirect(url_for('auth.login'))

Example 41

Project: Internetwache-CTF-2016 Source File: server.py
Function: csrf_protect
@app.before_request
def csrf_protect():
    if request.method == "POST":
        token = session.pop('_csrf_token', None)
        if not token or token != request.form.get('_csrf_token'):
            abort(400)

Example 42

Project: quokka-cart Source File: models.py
Function: check_out
    def checkout(self, processor=None, *args, **kwargs):
        self.set_processor(processor)
        processor_instance = self.processor.get_instance(self, *args, **kwargs)
        if processor_instance.validate():
            response = processor_instance.process()
            self.status = 'checked_out'
            self.save()
            session.pop('cart_id', None)
            return response
        else:
            self.addlog("Cart did not validate")
            raise Exception("Cart did not validate")  # todo: specialize this

Example 43

Project: JARR Source File: session_mgmt.py
@current_app.route('/logout')
@login_required
def logout():
    # Remove the user information from the session
    logout_user()

    # Remove session keys set by Flask-Principal
    for key in ('identity.name', 'identity.auth_type'):
        session.pop(key, None)

    # Tell Flask-Principal the user is anonymous
    identity_changed.send(current_app, identity=AnonymousIdentity())
    session_identity_loader()

    return redirect(url_for('login'))

Example 44

Project: pittsburgh-purchasing-suite Source File: complete.py
Function: success
@blueprint.route('/contract/<int:contract_id>/edit/success')
@requires_roles('conductor', 'admin', 'superadmin')
def success(contract_id):
    '''Render the success template after completing a contract

    :param contract_id: Primary key ID for a
        :py:class:`~purchasing.data.contracts.ContractBase`

    :status 200: Render the success template
    :status 302: Redirect back to the edit company contacts
    '''
    if session.pop('success-{}'.format(contract_id), None):
        contract = ContractBase.query.get(contract_id)
        return render_template('conductor/edit/success.html', contract=contract)
    return redirect(url_for('conductor.edit_company_contacts', contract_id=contract_id))

Example 45

Project: cloud-asr Source File: run.py
@app.route('/logout')
@login_required
def logout():
    logout_user()

    for key in ['identity.name', 'identity.auth_type']:
        session.pop(key, None)
    identity_changed.send(app, identity=AnonymousIdentity())

    return redirect(url_for('index'))

Example 46

Project: pjuu Source File: views.py
@auth_bp.before_app_request
def kick_banned_user():
    """
    This function will check too see if the user has been banned since login.

    Without this we would have to wait for the user to try and login again
    before they are informed that they are banned. This fucntion will just
    ensure they are kicked out
    """
    if current_user and current_user.get('banned', False):
        session.pop('user_id', None)
        flash('You\'re a very naughty boy!', 'error')

Example 47

Project: sopython-site Source File: login.py
Function: logout_user
def logout_user():
    """Remove the user from the session."""

    #TODO: invalidate token with api
    if has_request_context():
        session.pop('user_id', None)

    g.current_user = AnonymousUser()

Example 48

Project: flask-forum Source File: app.py
@app.route('/logout', methods=['POST'])
def logout():
    session.pop("username", None)
    g.username = None
    return render_template("template.html", page_name="Logout", 
            page_body="You have been logged out.")

Example 49

Project: docklet Source File: login.py
Function: get
    @classmethod
    def get(self):
        resp = make_response(redirect('/login/'))
        session.pop('username', None)
        session.pop('nickname', None)
        session.pop('description', None)
        session.pop('avatar', None)
        session.pop('status', None)
        session.pop('usergroup', None)
        session.pop('token', None)
        resp.set_cookie('docklet-jupyter-cookie', '', expires=0)
        return resp

Example 50

Project: lexicrypt Source File: main.py
Function: log_out
@app.route('/logout', methods=['POST'])
def logout():
    """Log the user out."""
    session.pop('lex_token', None)
    session.pop('lex_email', None)
    return redirect(url_for('main'))
See More Examples - Go to Next Page
Page 1 Selected Page 2 Page 3