Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use SSL #571

Open
kyao opened this issue Jul 27, 2021 · 12 comments
Open

Use SSL #571

kyao opened this issue Jul 27, 2021 · 12 comments
Assignees
Milestone

Comments

@kyao
Copy link
Collaborator

kyao commented Jul 27, 2021

Use SSL

@kyao kyao added this to the Milestone 3 milestone Jul 27, 2021
@g1eb
Copy link
Collaborator

g1eb commented Jul 27, 2021

We should ask Pat how they want to handle connections over port 443 and who needs to provide the SSL certificates.

@kyao
Copy link
Collaborator Author

kyao commented Aug 12, 2021

For now we should use a self-signed certificate

@kyao kyao modified the milestones: Milestone 3, Milestone 4 Aug 17, 2021
@kyao
Copy link
Collaborator Author

kyao commented Sep 17, 2021

The t2wml backend service should run over SSL. I found this web page on running Flask over HTTPS:

https://blog.miguelgrinberg.com/post/running-your-flask-application-over-https

For now we should their self-signed certificate.

@zmbq
Copy link
Collaborator

zmbq commented Sep 17, 2021 via email

@zmbq
Copy link
Collaborator

zmbq commented Sep 17, 2021 via email

@kyao
Copy link
Collaborator Author

kyao commented Sep 17, 2021

One of the security requirement is every service that communicates with another service is required to use SSL. Even if this service is already sits behind IIS.

@kyao
Copy link
Collaborator Author

kyao commented Sep 17, 2021

What do we lose if we do not use Waitress, and just use plain Flask? There will not be many simultaneous users annotating datasets.

@kyao
Copy link
Collaborator Author

kyao commented Sep 17, 2021

Or, perhaps we can use uWSGI. It seems to support SSL.

https://uwsgi-docs.readthedocs.io/en/latest/
https://flask.palletsprojects.com/en/2.0.x/deploying/uwsgi/

@zmbq
Copy link
Collaborator

zmbq commented Sep 17, 2021 via email

@kyao
Copy link
Collaborator Author

kyao commented Sep 17, 2021

Why would flask be a security risk?

I do not think there will be many users. And, most of the time they will be working with small files. Perhaps we can start with Flask, and if we run into scalability issues we can switch to using one of the Python WSGI Servers.

https://flask.palletsprojects.com/en/2.0.x/deploying/index.html
https://www.appdynamics.com/blog/engineering/a-performance-analysis-of-python-wsgi-servers-part-2/

@zmbq
Copy link
Collaborator

zmbq commented Sep 18, 2021 via email

@kyao
Copy link
Collaborator Author

kyao commented Sep 19, 2021

They would prefer us to use SSL compatible WSGI server. They are not familiar with WSGI servers, but they suggest we look into CherryPy and Tornado.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants