Hello!
First I want to thank you for this awesome project!
I'd like to propose an extension to the current plugin system that may also relate to #78 and #20. Both issues asked for a different authentication method and I really understand that implementing and maintaining different authentication mechanisms is a bit overkill. However, I think we could extend the current plugin system in a way that the community would be able to contribute authentication/identity-provider plugins. Gotify will still need to maintain a database for applications/clients and user information. The actual authentication process however may be "outsourced" to a plugin.
This would allow a lot of different use-cases, like:
- System Authentication
- OAuth2 Authentication (thanks to
Webhooker we can already setup the OAuth endpoint)
- LDAP integration into Active Directory/FreeIPA/OpenLDAP (and thus bigger installations)
- Single-Sign-On (may require access to HTTP headers...)
- ...
Extending the current plugin system to support authentication providers would require some kind of system-plugin that is not bound to a specific user.
If you find this idea interesting I will try to come up with a more detailed proposal on the implementation part.
Best regards
Patrick
Hello!
First I want to thank you for this awesome project!
I'd like to propose an extension to the current plugin system that may also relate to #78 and #20. Both issues asked for a different authentication method and I really understand that implementing and maintaining different authentication mechanisms is a bit overkill. However, I think we could extend the current plugin system in a way that the community would be able to contribute authentication/identity-provider plugins. Gotify will still need to maintain a database for applications/clients and user information. The actual authentication process however may be "outsourced" to a plugin.
This would allow a lot of different use-cases, like:
Webhookerwe can already setup the OAuth endpoint)Extending the current plugin system to support authentication providers would require some kind of system-plugin that is not bound to a specific user.
If you find this idea interesting I will try to come up with a more detailed proposal on the implementation part.
Best regards
Patrick