v0.3.0
-
refactored and broken down the
gateway_client
to:http_handler
- for HTTP requests to the Gatewayauthenticate
- for authenticating using the Gateway's webpageinputs_handler
- for handling Inputs Directoryvar
- for environment variablesprocess_utils
- for starting the gateway
As a result
gateway_client
is more of a logic manager that utilises these various modules/classes -
added 2FA handling - executed through
TwoFaHandler
child classes- User can specify which handler to use by setting IBEAM_TWO_FA_HANDLER env var. Accepted values are 'GOOGLE_MSG', 'EXTERNAL_REQUEST' and 'CUSTOM_HANDLER'. These correspond to the following:
- TwoFaHandlers available:
GoogleMessageTwoFaHandler
- using Google Messages, written originally by @gmcmicken - I added some small tweaksExternalRequestTwoFaHandler
- calling an external URL for the 2FA code- custom handler - allowing users to provide a custom handler through the Inputs Directory
-
tweaked some logging messages to be more accurate and moved logs' logic to a separate module
-
updated the authentication logic to make it more reliable and provide more failsafes
-
added
support/verify_connection.py
script for testing the connection and certificates -
updated the wikipedia to reflect and document all of these changes