Skip to content

Latest commit

 

History

History
28 lines (20 loc) · 1.05 KB

File metadata and controls

28 lines (20 loc) · 1.05 KB

Sensitive Data Scanner

Rust Docs

This is the open-source library of the core SDS (Sensitive Data Scanner) functionality.

This contains:

  • Core SDS engine, which takes events and runs rules to find sensitive data
  • Built-in regex rule support, with optional keywords and secondary validator support
  • Generic rule trait, which allows implementing arbitrary rules outside of this repo
  • An extensive library of secondary validators / checksums
  • Go bindings

Updating the Go bindings

The Go bindings use the generated C header at sds-go/go/dd_sds.h. When an exported Rust function in sds/src/native/ is added, removed, or its signature changes, install cbindgen 0.29.2 and regenerate the header:

cargo install cbindgen --version 0.29.2 --locked
make update-sds-go-header

Commit the regenerated header with the Rust and Go changes. CI runs make check-sds-go-bindings to verify that the header is current and that the Go bindings build and pass their tests against the Rust library.