...
Discussion thread: new discussion and old discussion
JIRA: KAFKA-9413
Video recording:
Widget Connector | ||
---|---|---|
|
Motivation
Auditing is a reporting functionality to notify other subsystems of the outcome of an authorization. It is used to check the activity of certain entities within a cluster. It is highly demanded in most businesses to have the ability of obtaining audit information in case someone changes cluster configuration (like creation/deletion/modify/description of any topic or ACLs) or even record client events in some environment. Audits need to be structured as the implementors of this auditing would be JVM based applications and a more loose format (such as as emitting JSON as KIP-673) would in fact provide a less safe API.
...
In this KIP we try to provide a generic solution that can be applied to a broader interpretation of auditing which can be applied to a variety of use-cases, such as the ones described above in a similar implementation fashion as the Authorizer.
A video recording is available below.
Widget Connector url https://www.youtube.com/watch?v=uOJTyAEJmB8&feature=youtu.be
Public Interfaces
Auditor
Developers will be required to implement an interface which gives the extension point to implement auditing and reporting. In terms of form it can make sense to provide a similar interface to the Authorizer
as they are closely related, they are the flip side of each other. The snippet defining the interface can be found below. Similarly to the Authorizer
we implement this in Java in the clients module so implementors won’t have to depend on the core module and ultimately on Scala.
...