Skip to content

Enhancement Proposal: Add OAuth2 support for webhooks in addition to already existing BasicAuth #396

@sohel-m

Description

@sohel-m

Summary

Today the webhook notification service already supports BasicAuth.
An OAuth2 setting should also be added to support more 'modern' usecases and make it more 'complete'.

Motivation

I ran into a situation where the notification service(ServiceNow) was no longer accepting BasicAuth as means of authentication.
It was accepting only OAuth2 for security reasons. (I'm sure more and more third party services will also stop accepting basic auth in future, hence this proposal)

So to make it work in the current setup I had to implement a "not-so-elegant" workaround in which a CronJob was periodically creating tokens which could be used by the notification configuration(within the argocd-notifications-cm) whenever required.

Proposal

Add an optional OAuth2 setting in the already existing parameters for webhook so endusers can choose to their liking between basic and oauth2.
It should be a straightforward implementation by making use of the standard oauth2 package.

I can already start working on it :) (unless there are some good reasons why this should not be added)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions