argoproj / argoproj/notifications-engine
Feature Request: Add OAuth Authentication Support for Email Notifications
- Dominant language
- Go
- Stars
- 334
- Forks
- 217
- PR merge metrics
- No merged PRs in 30d
Description
### Feature Request: Add OAuth Authentication Support for Email Notifications
#### Description
Currently, Argo CD supports sending emails for notifications, but it does not provide an option for OAuth-based authentication. This feature is essential for integrating with modern email services which require OAuth for enhanced security. Some are [ending support for basic SMTP auth.](https://techcommunity.microsoft.com/blog/exchange/exchange-online-to-retire-basic-auth-for-client-submission-smtp-auth/4114750)
#### Use Case
Many organizations use email services like Gmail or Outlook, which enforce OAuth authentication for sending emails. Adding this feature will make it easier for users to configure email notifications securely.
#### Proposed Solution
Add support for OAuth by allowing users to configure:
- Client ID
- Client Secret
- Authorization URL
- Token URL
- Scopes required for the email provider
#### Benefits
- Enhanced security for email notifications.
- Compatibility with modern email services that require OAuth.
- Improved user experience by supporting widely used authentication protocols.
#### Additional Context
- [MSAL for go](https://learn.microsoft.com/en-us/entra/msal/go/)
- [Google OAuth SMTP Documentation](https://developers.google.com/gmail/imap/xoauth2-protocol)
- [OAuth 2.0 Overview](https://oauth.net/2/)
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue names no files, tests, or entry points. Start by locating the email notification authentication flow and its configuration handling, then determine how client credentials, authorization and token URLs, and scopes should be represented; done means OAuth-authenticated email notifications work with the required providers and are covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- authentication, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100