diff --git a/flaskapp/__init__.py b/flaskapp/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/flaskapp/app.py b/flaskapp/app.py deleted file mode 100644 index 9e01226..0000000 --- a/flaskapp/app.py +++ /dev/null @@ -1,66 +0,0 @@ -from flask import Flask, request, jsonify, json -from flask_restful import Resource, Api -import requests -from decouple import config -from pyotp import TOTP - -app = Flask(__name__) -api = Api(app) - - -def check_otp(name, realm, token): - data = { - "auth_name": config('AUTH_NAME', ''), - "auth_token": TOTP(config('AUTH_SEED', '')).now(), - "auth_realm": config('AUTH_REALM', ''), - "name": name, - "realm": realm, - "token": token - } - response = requests.post( - "https://{OTP_SERVER}{OTP_VERIFY_ENDPOINT}".format( - OTP_SERVER=config('OTP_SERVER', ''), - OTP_VERIFY_ENDPOINT=config('OTP_VERIFY_ENDPOINT', '/ungleichotp/verify/') - ), - data=data - ) - return response.status_code - - -class MainView(Resource): - def get(self): - return jsonify({'Detail': 'This view is open to users'}) - - -class ProtectedView(Resource): - def post(self): - data = request.get_json() - if data is not None: - try: - user = data['name'] - realm = data['realm'] - token = data['token'] - assert(realm == config('REALM_ALLOWED')) - code = check_otp(user, realm, token) - assert(code == 200) - except (KeyError, AssertionError) as e: - response = app.response_class(response=json.dumps({'Message': 'Invalid data'}), - status=400, - mimetype='application/json') - return response - - response = app.response_class(response=json.dumps({'data sent': data}), - status=200, - mimetype='application/json') - return response - else: - return app.response_class(response=json.dumps({'Message': 'invalid request'}), - status=400, - mimetype='application/json') - - -api.add_resource(MainView, '/') -api.add_resource(ProtectedView, '/protected') - -if __name__ == '__main__': - app.run(host='::') diff --git a/flaskapp/wsgi.py b/flaskapp/wsgi.py deleted file mode 100644 index 86ea110..0000000 --- a/flaskapp/wsgi.py +++ /dev/null @@ -1,4 +0,0 @@ -from flaskapp.app import app - -if __name__ == "__main__": - app.run() diff --git a/requirements.txt b/requirements.txt index f467678..b347564 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,9 +2,7 @@ pyotp>=2.2.6 django>=2.1.2 djangorestframework python-decouple>=3.1 -flask -flask_restful -requests + # DB psycopg2 diff --git a/ungleichotpserver/wsgi.py b/ungleichotpserver/wsgi.py index 8fc5f7e..1eed050 100644 --- a/ungleichotpserver/wsgi.py +++ b/ungleichotpserver/wsgi.py @@ -8,10 +8,9 @@ https://docs.djangoproject.com/en/2.1/howto/deployment/wsgi/ """ import os + from django.core.wsgi import get_wsgi_application os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'ungleichotpserver.settings') application = get_wsgi_application() - -