dce824b5dd
The UserInfo endpoint is for fetching the users profile (name, email, phone number, picture, and so on). Token introspection is for inspecting the access token and determining the authorities the user has (subject (principal), entitlements, and scopes granted).
wg-selfserve
Prerequisites
The tested setup is to host the service on apache, with uwsgi running the
python application. Example configs for apache and uwsgi are provided in the
examples/
subdirectory.
All python dependencies are listed in requirements.txt
. It is recommended to
run the application in a virtualenv.
Wireguard must be installed with the wg
binary available in $PATH
.
You will need to register the service with an oauth server,
probably toker.dsv.su.se
. Oauth settings are saved in config.ini
along
with all other settings.
Setup
- Clone the repo
- Create server keys:
wg genkey | tee server-priv.key | wg pubkey > server-pub.key
- Create a suitable directory for user client data:
mkdir user-data
- Set up config.ini:
cp config.ini.example config.ini && editor config.ini
The comments in the file should explain each option. - Ensure the web server user can write to the
work/
subdirectory:
chown www-data work/
- Configure apache and uwsgi, see examples under
examples/
. - Start apache and uwsgi
- Create a symbolic link to the wireguard server config:
ln -s /path/to/repo/work/<tunnel-id>.conf /etc/wireguard/
- Activate the wg-quick systemd unit:
systemctl enable wg-quick@<tunnel-id>.service
- Start the wg-quick systemd unit:
systemctl start wg-quick@<tunnel-id>.service
Description
Languages
Python
46%
JavaScript
22.8%
Shell
12.1%
CSS
11.3%
HTML
7.8%