Adds support for a new "reserved" key name for the context structure (privateAttributes) that accepts an array of strings. These values are passed along to the context builder to mark the specified context key names as private. Private context values can be used in targeting but are not stored by LaunchDarkly. Administrator experience: while the key names show up in the LaunchDarkly (verified via Live Event Debugging), they appear as meta data and no key values are sent / appear in LaunchDarkly
Bumped the Java SDK to 6.2.1 - it looks like there were a number of updates since 6.0.6 to address a vulnerability in one of the dependencies for the SDK
A note about handling private attributes in LaunchDarkly:
LD supports the ability to define context properties/attributes as "private" this means that these attributes may be used for targeting purposes but will not be sent to LaunchDarkly as part of it's SDK telemetry and analytics data. This is meant to allow us to use context attributes that include PII (like email) without having it reside in LaunchDarkly's context database. To mark an attribute the Java SDK provides a context builder property called privateAttributes that includes an array of property names to be treated as private (see https://docs.launchdarkly.com/sdk/features/private-attributes for more info)
@SMSMichael Sorry for the delay on this. I'm finally back from traveling and CFSummit and had a chance to review. Everything looks good so I have merged!
This PR introduces 2 changes into the code base:
privateAttributes
) that accepts an array of strings. These values are passed along to the context builder to mark the specified context key names as private. Private context values can be used in targeting but are not stored by LaunchDarkly. Administrator experience: while the key names show up in the LaunchDarkly (verified via Live Event Debugging), they appear as meta data and no key values are sent / appear in LaunchDarklyA note about handling private attributes in LaunchDarkly: LD supports the ability to define context properties/attributes as "private" this means that these attributes may be used for targeting purposes but will not be sent to LaunchDarkly as part of it's SDK telemetry and analytics data. This is meant to allow us to use context attributes that include PII (like email) without having it reside in LaunchDarkly's context database. To mark an attribute the Java SDK provides a context builder property called
privateAttributes
that includes an array of property names to be treated as private (see https://docs.launchdarkly.com/sdk/features/private-attributes for more info)