Immuta v2.3.0 Release Notes
Immuta version 2.3.0 was released October 17, 2018.
v2.3.0 New Features
Supports separation of storage and compute in Spark workloads. Immuta can now enforce all SparkSQL controls on any data storage technologies that support batch processing workloads (previous support was HDFS only). Specifically Immuta has implementations for EMR backed by S3 and Azure Data Lake backed by Azure Blob Store, but can be expanded to others in the future. Details about SparkSQL controls can be found in the Spark Access Pattern documentation.
- Supports conditions (for everyone / everyone except) on row level and purpose restriction policies.
- Supports conditional masking / cell-level security: ability to drive masking of a column based on the value in another column in that same row.
- Supports variation of the same policy action. For example, mask using regex for members of group A, otherwise mask using hashing...
- Allows combining Differential privacy with other policy actions such as mask, row level security, etc.
Improves project collaboration through Project Equalization. This feature allows a project owner to equalize all users in a project to the same level of access when working in the project, ensuring nobody in the project can see more than the member who can see the least.
- Supports bulk actions:
- Expose data sources in bulk from a database connection.
- Disable/delete/restore data sources in bulk.
- Edit the connection information of data sources in bulk.
- Supports multiple approving parties. For subscription policies that require manual approval, the policy can enforce more than one approver and even allow specific users to approve within a permission type.
- Displays policy history in the Policy tab of the data source.
- Supports additional SQL function pushdown through the Immuta Query Engine.
- Many subquery scenarios.
- Window functions.
- Additional String functions.
- Supports Immuta Hadoop User White List: As opposed to leveraging a black list for users to be ignored by Immuta on hadoop clusters, we added the ability to instead use a white list of users to apply Immuta controls against (this is especially helpful for pilots).
- Added code snippets on each data source to help guide the user on how to access exposed data through Immuta.
- Enhanced Query Engine authentication: Rather than user/password authentication, users can be forced to use PKI or LDAP authentication to the Immuta Query Engine (PostgreSQL).
- Configurable user permission segmentation: In order to provide guarantees against insider threats, users with GOVERNANCE permission can't also have the ADMIN permission (and vice versa), which prevents these users from granting themselves subscriptions to data. Additionally, GOVERNANCE and ADMIN can't see data through Immuta, but GOVERNORS are allowed to build policies against the data, again, to avoid punching policy holes to data for themselves.
- Supports joining on masked values in a controlled manner. To avoid unintended link attacks, Immuta protects from joining on masked values. However, we now provide the ability to optionally allow joining on masked values in a project where the data sources available for joining are controlled.
- New Reports:
- One user to all data sources they are subscribed to.
- One data source to all users that are subscribed to it.
- Email digest: summarizes notifications to avoid email notification overload.
- Audit endpoint supports audit WRITE from custom policy enforcement points.
v2.3.0 Major Bug Fixes
v2.3.0 Known Bugs
Project Equalization does not support HDFS, Amazon S3, SFTP, or Azure Data Sources.
When adding a custom permission in the Configuration Builder, the value must be all uppercase.
v2.3.0 Deprecation Notices
- Removed all internal functionality surrounding JupyterHub / Scripts. However, this can be easily configured in your own Jupyter or similar environments.
- Removed the advanced vs simple policy builder toggle - policies are all built through the same interface now.
v2.3.0 Breaking API Changes
- The policy API (creating and returning policies) has a breaking change. The policy handler response did not change. Details can be found in the policy API documentation.