def auth_login(): # pragma: no cover """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for("index") if "next" in flask.request.args: if is_safe_url(flask.request.args["next"]): return_point = flask.request.args["next"] if authenticated(): return flask.redirect(return_point) admins = APP.config["ADMIN_GROUP"] if isinstance(admins, list): admins = set(admins) else: # pragma: no cover admins = set([admins]) if APP.config.get("PAGURE_AUTH", None) in ["fas", "openid"]: groups = set() if not APP.config.get("ENABLE_GROUP_MNGT", False): groups = [group.group_name for group in pagure.lib.search_groups(SESSION, group_type="user")] groups = set(groups).union(admins) return FAS.login(return_url=return_point, groups=groups) elif APP.config.get("PAGURE_AUTH", None) == "local": form = pagure.login_forms.LoginForm() return flask.render_template("login/login.html", next_url=return_point, form=form)
def auth_login(): # pragma: no cover """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for('index') if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): return_point = flask.request.args['next'] if authenticated(): return flask.redirect(return_point) admins = APP.config['ADMIN_GROUP'] if isinstance(admins, basestring): admins = set([admins]) else: # pragma: no cover admins = set(admins) if APP.config.get('PAGURE_AUTH', None) in ['fas', 'openid']: return FAS.login(return_url=return_point, groups=admins) elif APP.config.get('PAGURE_AUTH', None) == 'local': form = pagure.login_forms.LoginForm() return flask.render_template( 'login/login.html', next_url=return_point, form=form, )
def auth_login(): # pragma: no cover """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for('index') if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): return_point = flask.request.args['next'] if authenticated(): return flask.redirect(return_point) admins = APP.config['ADMIN_GROUP'] if isinstance(admins, list): admins = set(admins) else: # pragma: no cover admins = set([admins]) if APP.config.get('PAGURE_AUTH', None) in ['fas', 'openid']: groups = set() if not APP.config.get('ENABLE_GROUP_MNGT', False): groups = [ group.group_name for group in pagure.lib.search_groups(SESSION, group_type='user') ] groups = set(groups).union(admins) return FAS.login(return_url=return_point, groups=groups) elif APP.config.get('PAGURE_AUTH', None) == 'local': form = pagure.login_forms.LoginForm() return flask.render_template( 'login/login.html', next_url=return_point, form=form, )
def auth_login(): # pragma: no cover """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for('index') if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): return_point = flask.request.args['next'] if authenticated(): return flask.redirect(return_point) admins = APP.config['ADMIN_GROUP'] if isinstance(admins, list): admins = set(admins) else: # pragma: no cover admins = set([admins]) if APP.config.get('PAGURE_AUTH', None) in ['fas', 'openid']: groups = set() if not APP.config.get('ENABLE_GROUP_MNGT', False): groups = [ group.group_name for group in pagure.lib.search_groups( SESSION, group_type='user') ] groups = set(groups).union(admins) return FAS.login(return_url=return_point, groups=groups) elif APP.config.get('PAGURE_AUTH', None) == 'local': form = pagure.login_forms.LoginForm() return flask.render_template( 'login/login.html', next_url=return_point, form=form, )
def auth_login(): """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for('index') if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): return_point = flask.request.args['next'] if authenticated(): return flask.redirect(return_point) return FAS.login(return_url=return_point)
def auth_login(): """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for("index") if "next" in flask.request.args: return_point = flask.request.args["next"] if flask.g.fas_user: return flask.redirect(return_point) return FAS.login(return_url=return_point)
def auth_login(): # pragma: no cover """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for('index') if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): return_point = flask.request.args['next'] auth = APP.config.get('PAGURE_AUTH', None) if not authenticated() and auth == 'oidc': # If oidc is used and user hits this endpoint, it will redirect # to IdP with destination=<pagure>/login?next=<location> # After confirming user identity, the IdP will redirect user here # again, but this time oidc.user_loggedin will be True and thus # execution will go through the else clause, making the Pagure # authentication machinery pick the user up if not oidc.user_loggedin: return oidc.redirect_to_auth_server(flask.request.url) else: flask.session['oidc_logintime'] = time.time() fas_user_from_oidc() set_user() if authenticated(): return flask.redirect(return_point) admins = APP.config['ADMIN_GROUP'] if isinstance(admins, list): admins = set(admins) else: # pragma: no cover admins = set([admins]) if auth in ['fas', 'openid']: groups = set() if not APP.config.get('ENABLE_GROUP_MNGT', False): groups = [ group.group_name for group in pagure.lib.search_groups(SESSION, group_type='user') ] groups = set(groups).union(admins) ext_committer = set(APP.config.get('EXTERNAL_COMMITTER', {})) groups = set(groups).union(ext_committer) return FAS.login(return_url=return_point, groups=groups) elif auth == 'local': form = pagure.login_forms.LoginForm() return flask.render_template( 'login/login.html', next_url=return_point, form=form, )
def auth_login(): """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for('index') if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): return_point = flask.request.args['next'] if authenticated(): return flask.redirect(return_point) groups = APP.config['ADMIN_GROUP'] if isinstance(groups, basestring): groups = [groups] groups = groups[:] groups.append('provenpackager') return FAS.login(return_url=return_point, groups=groups)
def auth_login(): next_url = None if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): next_url = flask.request.args['next'] if not next_url or next_url == flask.url_for('.auth_login'): next_url = flask.url_for('.index') if hasattr(flask.g, 'fas_user') and flask.g.fas_user is not None: return safe_redirect_back(next_url) else: groups = APP.config['FEDORA_ELECTIONS_ADMIN_GROUP'][:] if isinstance(groups, basestring): groups = [groups] groups.extend(models.get_groups(SESSION)) return FAS.login(return_url=next_url, groups=groups)
def auth_login(): """ Method to log into the application using FAS OpenID. """ return_point = flask.url_for('index') if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): return_point = flask.request.args['next'] if authenticated(): return flask.redirect(return_point) groups = APP.config['ADMIN_GROUP'] if isinstance(groups, basestring): groups = [groups] groups = groups[:] groups.append('provenpackager') return FAS.login( return_url=return_point, groups=groups)
def login(): # pragma: no cover ''' Login mechanism for this application. ''' next_url = None if 'next' in flask.request.args: if is_safe_url(flask.request.args['next']): next_url = flask.request.args['next'] if not next_url or next_url == flask.url_for('.login'): next_url = flask.url_for('.index') if hasattr(flask.g, 'fas_user') and flask.g.fas_user is not None: return flask.redirect(next_url) else: admins = APP.config['ADMIN_GROUP'] if isinstance(admins, six.string_types): # pragma: no cover admins = set([admins]) else: admins = set(admins) groups = list(admins)[:] reviewers = APP.config['REVIEW_GROUP'] if isinstance(reviewers, six.string_types): # pragma: no cover reviewers = set([reviewers]) else: reviewers = set(reviewers) groups.extend(reviewers) voters = APP.config['WEIGHTED_GROUP'] if isinstance(voters, six.string_types): # pragma: no cover voters = set([voters]) else: voters = set(voters) groups.extend(voters) return FAS.login(return_url=next_url, groups=groups)
def auth_login(): # pragma: no cover """ Login mechanism for this application. """ next_url = flask.url_for('index') if 'next' in flask.request.values: next_url = flask.request.values['next'] if next_url == flask.url_for('auth_login'): next_url = flask.url_for('index') if APP.config.get('MM_AUTHENTICATION', None) == 'fas': if hasattr(flask.g, 'fas_user') and flask.g.fas_user is not None: return flask.redirect(next_url) else: return FAS.login(return_url=next_url, groups=APP.config['ADMIN_GROUP']) elif APP.config.get('MM_AUTHENTICATION', None) == 'local': form = forms.LoginForm() return flask.render_template( 'login.html', next_url=next_url, form=form, )
def auth_login(): # pragma: no cover """ Login mechanism for this application. """ next_url = flask.url_for('index') if 'next' in flask.request.values: next_url = flask.request.values['next'] if next_url == flask.url_for('auth_login'): next_url = flask.url_for('index') if APP.config.get('MM_AUTHENTICATION', None) == 'fas': if hasattr(flask.g, 'fas_user') and flask.g.fas_user is not None: return flask.redirect(next_url) else: return FAS.login( return_url=next_url, groups=APP.config['ADMIN_GROUP']) elif APP.config.get('MM_AUTHENTICATION', None) == 'local': form = forms.LoginForm() return flask.render_template( 'login.html', next_url=next_url, form=form, )