Almost 1 year since this post was created and not even Roll20 has answered this topic that, in my point of view, is so critical.
I guess people prefer having nicey colory winky pinky stuff than to protect their accounts in a robust way.
I know you, devs, because I'm (or was) basically one. So here you have some hints:
1) You can go here and use OAuth 2.0 for Open Source Authorization: https://oauth.net/2/
2) You can directly go here for client and server libraries if:
2.1) You have a PHP server: https://oauth.net/code/php/
2.2) You have a NodeJS server: https://oauth.net/code/nodejs/
2.3) You have a Ruby on Rails server: https://oauth.net/code/ruby/
2.4) You have a Python server: https://oauth.net/code/python/
2.5) You have a Springboot (or generic Java) server: https://oauth.net/code/java/
2.6) If not, you have here the complete list of OAuth libraries: https://oauth.net/code/
3) Here you have all the documentation required to getting started: https://oauth.net/getting-started/
4) If it's too much, you can go here to an OAuth 2 simplified getting started guide: https://aaronparecki.com/oauth-2-simplified/
5) Now, there are no excuses. *slash*
EDIT:
Also, you can have this, if you feel lazy, Google did the work for all of us:
https://developers.google.com/identity/protocols/OAuth2WebServer