Skip to content

Tracking Sensitive Information With Taskless

Taskless makes it possible to track, triage, and remediate sensitive information leaks in your application without needing to manually instrument every outbound call your application makes.

What is Taskless? Taskless helps developers instrument the network calls their applications make, regardless of the APIs and SDKs used. It's compatible with existing telemetry and logging solutions, giving you a faster route to better logs.
Using a different framework other than what's shown? You can switch the framework you're viewing docs for:

In your project root, run the following command to install the Taskless Client:

npm install @taskless/loader

You can install the PII Pack with the following command:

Terminal window
npx @taskless/pack install https://github.com/taskless/pack-pii/releases/download/v0.0.5/pack.tgz

All that’s left is to update your app’s start command

The following configuration fields are available for the PII detection pack.

If using the CLI, you can configure these inside of your Pack’s config.json inside of the .taskless directory. If using Taskless Cloud, these can be configured via the Taskless Cloud dashboard.

Field NameTypeDescriptionDefault Value
domainsstring[]List of domains to apply PII checks to (empty = all domains)[]
emailAddressFieldsstring[]Regex patterns for email detection in field namesPre-configured patterns
emailAddressValuesstring[]Regex patterns for email detection in valuesPre-configured patterns
addressFieldsstring[]Regex patterns for physical address detection in fieldsPre-configured patterns
addressValuesstring[]Regex patterns for physical address detection in values[]
namesFieldsstring[]Regex patterns for name detection in field namesPre-configured patterns
namesValuesstring[]Regex patterns for name detection in values[]
phoneNumberFieldsstring[]Regex patterns for phone number detection in fieldsPre-configured patterns
phoneNumberValuesstring[]Regex patterns for phone number detection in valuesPre-configured patterns
idFieldsstring[]Regex patterns for national ID detection in fieldsPre-configured patterns
idValuesstring[]Regex patterns for national ID detection in valuesPre-configured patterns
creditCardFieldsstring[]Regex patterns for credit card detection in fieldsPre-configured patterns
creditCardValuesstring[]Regex patterns for credit card detection in valuesPre-configured patterns
birthdateFieldsstring[]Regex patterns for birthdate detection in fieldsPre-configured patterns
birthdateValuesstring[]Regex patterns for birthdate detection in valuesPre-configured patterns
ipAddressFieldsstring[]Regex patterns for IP address detection in fieldsPre-configured patterns
ipAddressValuesstring[]Regex patterns for IP address detection in valuesPre-configured patterns
additionalFieldsstring[]Custom regex patterns for additional PII field detection[]
additionalValuesstring[]Custom regex patterns for additional PII value detection[]

For the complete configuration reference and advanced use cases, visit the pack-pii documentation.

The PII pack automatically generates the following visualization charts in Taskless Cloud:

  • none - we are still working on the optimial defaults to show PII related issues

Do I need any additional infrastructure? No, Taskless is designed to work inside your existing application context. This way you don’t have to figure out kubernetes, create lambda sidecars, or stand up additional machines.

What is the performance overhead of Taskless? Taskless tries to do as much as possible asynchronously and locally to minimize the performance impact to your app. The WebAssembly overhead is typically less than 1ms.

When your application starts and you are using Taskless Cloud for requests (via an API key), your configuration will be downloaded from the Taskless Cloud if it isn’t already cached. The overhead of this request is typically 100-200ms.

What happens if Taskless is unavailable? When your configuration and integrations are running locally, Taskless will continue to function even if the service isn’t available.

If you are retrieving or sending data to Taskless Cloud, Taskless takes a “fail open” approach. This means that our default behavior is to let requests fall through to your application’s built-in network requests.

Does Taskless transmit any sensitive data? No. Taskless only captures the metadata; for example, “you send emails to domain XYZ”. Because of the sandbox all Packs run in, Taskless cannot access server secrets, make web requests, or access any sensitive data in your application context.