Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for post-assessment Webhook #112

Open
phenixblue opened this issue Jun 16, 2021 · 3 comments
Open

Add support for post-assessment Webhook #112

phenixblue opened this issue Jun 16, 2021 · 3 comments
Labels
enhancement New feature or request help wanted Extra attention is needed python

Comments

@phenixblue
Copy link
Contributor

What would you like to be added:

Add functionality to allow for calling a user defined endpoint for policy failures (possibly passes as well).

Not sure if the granularity should be a single global configuration for a MagTape installation, different endpoint per policy, etc.

should be bypassed if no config is provided

should have a timeout value and should not cause a failure in the policy assessment if the call to the endpoint fails

ideally this can happen asynchronous and be non-blocking to the end-user request

Why is this needed:

to allow for integration with existing systems for alerting/reporting

@phenixblue phenixblue added enhancement New feature or request help wanted Extra attention is needed python labels Jun 16, 2021
@phenixblue
Copy link
Contributor Author

Would be nice if this could become a sort of pluggable interface allowing users to define the specific endpoint, a templates request, and expected response.

If this is done, the existing Slack alerts may be able to be migrated to this pluggable interface

@ilrudie
Copy link
Contributor

ilrudie commented Jun 19, 2021

In the past we'd talked about a gRPC-based sidecar service to enable offloading of the alerting work from the primary MagTape.

  1. create a protocol buffer definition for message/alert "type" and service (proto3)
  2. implement sidecar which implements the service (go?)
  3. implement the python client functions to build a message/alert from a policy result and offload messaging to the gRPC service

If we still fancy exploring this route I think we can begin work on the protocol buffer piece and try to get an idea what the API's input and output may look like.

@phenixblue
Copy link
Contributor Author

Sounds good. Assigning to you @ilrudie . Reach out whenever you want to sync on this.

@ilrudie ilrudie removed their assignment Dec 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed python
Projects
None yet
Development

No branches or pull requests

2 participants