You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Only show the site to those who log in with a Google authentication. We are fortunate that we only have to authenticate a specified whitelist of users who are selected by the Head of Programming (our admin user) to do work for Penguicon.
The front of the email address serves as a track name, and the user's username. Email = username = track name.
There will be one user who is an exception, programming@penguicon.org, who is the admin user and not associated with any particular track.
Implementation
On all routes, implement the @login_required decorator from the Flask-Login extension
from flask.ext.login import login_required
Then route ('/') to view whichever track is coordinated by the logged-in user. Examples:
I log in as tech@penguicon.org: '/' -> '/tech' I see the list of Tech track events.
I log in as something which does not correspond to a track, such as programming@penguicon.org: '/' -> '/admin' which is an administration page. If it is not a Penguicon email address, deny access to the site, and route the user to a page which gives plentiful contact information with which to get help.
Each user, having logged in, may then use the navigation to surf to any page they wish. The above routing only determines their default homepage, in order to show them what is most relevant to their responsibilities.
The text was updated successfully, but these errors were encountered:
Only show the site to those who log in with a Google authentication. We are fortunate that we only have to authenticate a specified whitelist of users who are selected by the Head of Programming (our admin user) to do work for Penguicon.
A user's email will always be a Penguicon email address (which is a GMail address) such as
tech
@penguicon.org
. Therefore, Google sign-in should (we hope) work for all users. https://developers.google.com/identity/sign-in/web/build-buttonThe front of the email address serves as a track name, and the user's username. Email = username = track name.
There will be one user who is an exception,
programming
@penguicon.org
, who is the admin user and not associated with any particular track.Implementation
On all routes, implement the
@login_required
decorator from the Flask-Login extensionfrom flask.ext.login import login_required
Then route ('/') to view whichever track is coordinated by the logged-in user. Examples:
I log in as
tech
@penguicon.org
: '/' -> '/tech' I see the list of Tech track events.I log in as something which does not correspond to a track, such as
programming
@penguicon.org
: '/' -> '/admin' which is an administration page. If it is not a Penguicon email address, deny access to the site, and route the user to a page which gives plentiful contact information with which to get help.Each user, having logged in, may then use the navigation to surf to any page they wish. The above routing only determines their default homepage, in order to show them what is most relevant to their responsibilities.
The text was updated successfully, but these errors were encountered: