new: setup Falco API proposal

Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
This commit is contained in:
Leonardo Di Donato 2019-10-30 15:55:20 +01:00 committed by Leo Di Donato
parent 8069eacc94
commit 2b75ca9024

34
proposals/20191030-api.md Normal file
View File

@ -0,0 +1,34 @@
# Falco APIs
## Summary
With this proposal we inted to present the intent of creating a Falco API.
This proposal also intends to list the set of the gRPC services such API will expose.
## Motivation
We want users to interface with Falco data, rules, and configurations via thirdy-part clients.
Such ability would enable the community to create a whole set of OSS tools, built on Falco.
Some examples, already in place, are:
- [falcoctl](https://github.com/falcosecurity/falcoctl)
- [falco-exporter](https://github.com/falcosecurity/falco-exporter)
## Goals
## Non-Goals
## Proposal
### Use cases
- Receive Falco events with a well-defined contract over wire --> **outputs**
- Receive Falco drops with a well-defined contract over wire --> **drops**
- Receive current Falco version and related meta information (commit hash, built type, etc.) --> **version**
- Config Falco via API (CRUD) -> **configs**
- Inject and/or modify Falco rules via API (CRUD) --> **rules**
- Send input events to Falco over wire --> **inputs**
### Diagrams