1. Docs
  2. SaaS Shield
  3. Tenant Security Proxy
  4. Changelog

Changelog

See our buildlog for relationships between specific docker hashes and version tags. The most recent releases are at the bottom of the file. There will only ever be multiple hashes for a single version tag if the underlying image was rebuilt to fix a security vulnerability.

v4.6.0

  • Support additional key derivation type based on HMAC SHA-256.

v4.5.0

  • Added new optional environment variable API_KEY_2. If present, this API key is an alternative that clients can use for authorization. Intended to be used when rotating API keys.

v4.4.2

  • Added multi arch builds. amd64 and arm64 docker containers are both published to gcr.

v4.4.1

  • Added error codes for KMS throttling.

v4.3.0

  • Added support for KMS configs assigned to multiple organizations.

v4.2.0

  • Added environment variables TSP_BIND_ADDRESS, TSP_HTTP_BIND_ADDRESS, TSP_HEALTH_BIND_ADDRESS, and TSP_EVENT_BIND_ADDRESS to allow customization of bind addresses for the TSP.
  • Dependency updates.

v4.1.2

  • Fixed a bug that could cause leased keys to stay in memory longer than intended.

v4.1.0

  • Initialize requests in flight metrics to 0 on startup.
  • Dependency updates.

v4.0.1

  • Fixed a bug that could cause leased keys to stay in memory longer than intended.

v4.0.0

  • Incremental configuration refreshes, which improves performance and memory use when the TSP has many tenants.
  • Removed deprecated metadata interface.
  • Separated tenant-security-logdriver from tenant-security-proxy, see documentation for configuration information.

Compatibility

  • tenant-security-logdriver must be version 4.0.0+
  • TSC-node must be version 2.0.0+
  • TSC-java must be version 3.0.0+

v3.3.6

  • Improve performance of TSP startup when many leased keys need to be generated.
  • Reduce per-tenant memory footprint of TSP by sharing HTTP clients.
  • Remove tenant_id label from published metrics to reduce the number of metrics dimensions for cases with many tenants.
  • Dependency updates.

v3.3.5

  • Improve performance of TSP startup.
  • Use RustTLS instead of OpenSSL TLS connections.

v3.3.4

  • Logging service performance improvements.

v3.3.3

  • Dependency updates. No code changes.

v3.3.1

  • Fixed a bug leading to dropped security events in cases with high tenant activity for prolonged periods.

v3.3.0

  • Added rekey endpoint and functionality.

v3.2.0

  • Added backwards compatible wrap/unwrap/batch interfaces.

Compatibility

  • TSC-node must be version 1.0.0+
  • TSC-java must be version 2.0.0+

In the future we’ll always produce at least a minor migration version when making breaking changes to the TSP/TSC to prevent possible downtime.

v3.1.1

  • Fixed a bug that prevented TSP from reporting ready if no logging configs were present.

v3.1.0

  • Added prometheus metrics for TSP container.
  • Improved resiliency of reading stored logging events.
  • Added checks for misconfigured logdriver volume.

v3.0.0

  • Added Security Event endpoint and functionality.
  • Fixed a bug that may prevent the TSP from starting when corrupt events are in its DB.
  • Improved TSP stdout log consistency.
  • Added TSP_SEND_LOGGING_TIMEOUT_MS, TSP_SEND_HIGH_WATER_MARK, and TSP_EVENT_LOG_CHANNEL_SIZE optional configurations.

Compatibility

  • TSC-node must be version 2.0.2+
  • TSC-java must be version 3.0.1+

v2.3.0

  • Standardized JSON logging across the proxy and logdriver.
  • Added limiting functionality to the logdriver tenant buffers. If defaults don’t work for you contact IronCore for settings to tweak.
  • Improve healthchecks.

v2.2.0

  • Adds logging of TSP activity to a tenant’s logging system (GCP Stackdriver and Splunk are currently supported). This feature must be configured on a per-tenant basis. If unsent log-events need to survive TSP restarts, a persistent volume needs to be added to the TSP container.

v2.1.0

  • Enables key leasing feature within the TSP. Key leasing must be enabled on a per-KMS configuration basis for leased keys to be used. By default, upgrading to this version of the TSP will have no effect until a KMS configuration is updated to allow for key leasing.

v2.0.2

  • Fixes unwrap of certain Azure keys which do not contain an embedded version header.

v2.0.1

  • Fix bug that caused KMS config request interval to fail if the Config Broker couldn’t be reached. Now an error message will be logged but the TSP will retry the request to the Config Broker on the next planned interval.
  • Fixes behavior of TSP if the configuration/keys of a running container are revoked within the Config Broker. In this case the TSP will fully exit as it is no longer in an valid state.

v2.0.0

  • Add batch unwrap and wrap endpoints to the service.
  • Logging improvements.
  • Rewrite of the TSP in Rust for performance, stability, and binary size improvements

Note

Key leasing has been pushed to a later release once event logging is completed, 2.0.0 is production ready.

v2.0.0-beta.1

  • Add key leasing.

Warning

Don’t use in production until audit logging for leased keys is introduced, as tenant KMS logs won’t reflect how the keys are actually being used.

v2.0.0-beta.0

  • Add batch unwrap and wrap endpoints to the service.

v1.4.5

  • Add retries on KMS configuration decrypts to cut down on intermittent issues impacting customers.

v1.4.4

  • Add extra logging traces for configuration decrypt calls that fail.

v1.4.3

  • Fixed issue with Azure versioned keys.
  • NOTICE on upgrading to this version, any Azure EDEKs should be batch decrypted and re-encrypted to avoid future issues with Azure key versioning.

v1.4.2

  • Improved error handling for some classes of Azure KMS authentication errors.

v1.4.1

  • Fixed a replay security vulnerability with API calls to the Config Broker.
  • Dropped base image from Alpine 3.10 to Alpine 3.9 now that it is vulnerability free and since 3.10 was sometimes causing segfault problems.

v1.4.0

  • Added additional error codes which provide better granularity about why requests to the tenants KMS failed to succeed. These new error codes are covered in more detail within the Tenant Security Client changelog.
  • Added a single level of retry for when a KMS cannot be reached. If the network is down or some other networking problem occurs, the Proxy will automatically attempt a single retry of the request in case the network was only temporarily unreachable.
  • Dropped base image from Alpine 3.10 to Alpine 3.9 now that it is vulnerability free and since 3.10 was sometimes causing segfault problems.

v1.3.0

  • Add caching of KMS SDK clients to prevent authorization rate limiting errors. Clients credentials will be refreshed every time configurations are pulled from the Config Broker.
  • Dropped base image from Alpine 3.10 to Alpine 3.9 now that it is vulnerability free and since 3.10 was sometimes causing segfault problems.

v1.2.0 (Unsupported)

  • Renamed container to tenant-security-proxy.

Update

Support for this version was dropped due a vulnerability. See the 2019-10-30 entry in our security advisories list.

v1.1.0

  • Changed permissions for and moved PM2 to run within app directory.

v1.0.0

Initial release.


Versioning Policy

See our container versioning policy documentation.

Was this page helpful?