Skip to content

ComputerScienceHouse/self-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

aaa88ba · Apr 10, 2024

History

79 Commits
Nov 2, 2020
Sep 19, 2018
Apr 10, 2024
Sep 7, 2020
Nov 2, 2020
May 2, 2018
Sep 4, 2020
Sep 4, 2020
Sep 4, 2020
May 22, 2018
Sep 4, 2020
Mar 30, 2021
May 22, 2018

Repository files navigation

CSH Self Service Account Management

Python 3.6 Code style: black

Features

  • Account Recovery
    • Based on information stored about the user, allow them to reset a potentially forgotten password.
    • Administrators can also manually generate these reset tokens, allowing for manual identity verification.
  • Two Factor Management
    • Allow users to generate and verify a two factor secret which will then be created in both Keycloak and FreeIPA.
    • Also provides the ability to disable two-factor, removing the secret from both locations.
  • Password Changing
    • Provide a central web interface for changing known passwords.

Recovery Techniques

  • SMS Number
    • Uses Twilio to send temporary verification pin. Once verified the user is redirected to the reset page.
  • External Email
    • Emails a direct link to the reset page.

Development Environment

  1. Bring up dependencies:

    1. docker-compose up -d
  2. Copy configuration template and set necessary secrets:

    1. cp ./config.env.py ./config.py
  3. Run migrations:

    1. flask db migrate
  4. Run the application:

    1. FLASK_ENV=development python ./wsgi.py