added cli parameters to server
This commit is contained in:
@@ -1,4 +1,7 @@
|
|||||||
import flask
|
import flask
|
||||||
|
import sys
|
||||||
|
import ssl
|
||||||
|
from argparse import ArgumentParser
|
||||||
from flask import Flask, send_from_directory
|
from flask import Flask, send_from_directory
|
||||||
from flask import request
|
from flask import request
|
||||||
from functools import wraps
|
from functools import wraps
|
||||||
@@ -170,7 +173,25 @@ def hello():
|
|||||||
return 'hello anonymous'
|
return 'hello anonymous'
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
app.run(host='0.0.0.0', port=1443, ssl_context='adhoc')
|
parser = ArgumentParser(
|
||||||
|
prog='session-security-poc',
|
||||||
|
description='Program to demostrate improved user session security')
|
||||||
|
parser.add_argument('--host', default='127.0.0.1')
|
||||||
|
parser.add_argument('--port', default='8080')
|
||||||
|
parser.add_argument('--key-file')
|
||||||
|
parser.add_argument('--cert-file')
|
||||||
|
parser.add_argument('--tls-self-signed', action='store_true')
|
||||||
|
|
||||||
|
args = parser.parse_args(sys.argv[1:])
|
||||||
|
|
||||||
|
if args.tls_self_signed:
|
||||||
|
ssl_context = 'adhoc'
|
||||||
|
elif args.key_file and args.cert_file:
|
||||||
|
ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
|
||||||
|
ssl_context.load_cert_chain(certfile=args.cert_file, keyfile=args.key_file)
|
||||||
|
else:
|
||||||
|
ssl_context = None
|
||||||
|
app.run(host=args.host, port=args.port, ssl_context=ssl_context)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
Reference in New Issue
Block a user