UserFrosting Login Feature Suggestion
This plan outlines a possible method of integrating social login, 2 factor authentication, and also the option for a developer to introduce their own authentication methods through their own sprinkles.
For every authentication method, there will be an authenticator class, which will have standard methods depending on what type of authenticator it is (see below). Each authenticator will be enabled in the config file. This is also where any application credentials that are needed by the authenticator will also be stored.
The presence of it in the configuration will then allow UserFrosting to "register" the authenticator class in a sub container called
authenticators. They have been set up in the config so that multiple instances of the same authenticator class can be used, such as if a person had two standard oath2 sites they wanted to use.
The different authenticator types will be split up into sub-containers again depending on what type it is.