Applies to: Kyvos Enterprise Kyvos Cloud (SaaS on AWS) Kyvos AWS Marketplace
...
From the Toolbox, click Semantic Models.
Select the semantic model name from the list and click the Process tab if needed.
From Properties, scroll down to Data Security and choose one of the following as an endpoint source:
Kyvos Internal
CustomRLS: Displayed only if the corresponding JAR files are uploaded through Custom Data Security Configurations on the Kyvos Manager.
Select an endpoint.
Click the Define Rule and Mapping link and select Groups or Users and select the groups or users you want to use or use Search to find them.
For Rules, click Allow All Columns, Allow All Rows, or click the Plus sign next to Rules to add a custom rule.
On the Add Rule dialog, provide Rule Name and Description.
From the Column Level area, select any of the following from Restrict and select the field on which you want to apply the restrictionthe restriction.
Data: Type of column level security in which only data of the column will be restricted. Any queries involving the restricted columns while browsing the semantic models are failed.
Data and Metadata: Type of column-level security in which only both data and metadata (visibility) of the column will be restricted. Any queries involving the restricted columns while browsing the semantic models are failed.
Data and Metadata: Type of column-level security in which both data and metadata (visibility) of the column will be restricted. If this option is selected, the restricted columns will not be visible while browsing the semantic model on any of the BI tools.
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Note
|
...
Column masking for Column Level Security
Masking can be applied to a single-level hierarchy, multilevel hierarchy, parent-child hierarchy, attributes, base measures, calculated measures, and measures used in calculations. For column-level security, both unconditional and conditional masking can be applied. By implementing masking at the column level, you can effectively manage data accessibility and privacy, ensuring that users only access information necessary for their roles while protecting sensitive data from exposure.
Unconditional column masking: Applies masking to specific columns. It is supported only for Spark-based deployments.
Conditional column masking (Beta): Applies masking only part of the data while masking based on specific conditions It is supported for both Spark and No-Spark-based deployments.
...
Unconditional column masking is used in Spark-based deployments where the entire column is masked uniformly. In this approach, any user who accesses the masked column will see only obfuscated or masked values rather than the actual data, regardless of their access permissions.
...
panelIconId | atlassian-note |
---|---|
panelIcon | :note: |
bgColor | #DEEBFF |
Note
...
Column masking is not applied to Member Properties, Unknown and Calculated members, and Predefined time type hierarchy.
...
Currently, column masking does not support the SQL interface.
...
Partial masking on numerical dimension field is not supported.
...
Merging of measure values for fully masked only attribute/single level hierarchy is not supported.
...
The original column data is preserved while masking because numeric data is masked with a number, and a date is masked with a date. You can specify a fixed pattern or a Regex expression for any string data type.
...
The masked value is displayed while browsing the semantic model on any BI tool with an MDX connection.
...
If using Tilde (~) for column masking and want to apply a filter on the masked value from Kyvos UI, then you must change the value of the field value separator as the default value of the kyvos.filter.value.separator property is also Tilde (~). Hence, you must change the default value of this property so that column masking with the Tilde character can function.
...
To apply column masking to a pre-defined hierarchy, you need to select the full name of the hierarchy.
...
restricted. If this option is selected, the restricted columns will not be visible while browsing the semantic model on any of the BI tools.
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Note
|
Anchor | ||||
---|---|---|---|---|
|
Column masking for Column Level Security
Masking can be applied to a single-level hierarchy, multilevel hierarchy, parent-child hierarchy, attributes, base measures, calculated measures, and measures used in calculations. For column-level security, both unconditional and conditional masking can be applied. By implementing masking at the column level, you can effectively manage data accessibility and privacy, ensuring that users only access information necessary for their roles while protecting sensitive data from exposure.
Unconditional column masking: Applies masking to specific columns. It is supported for both Spark and No-Spark-based deployments
Conditional column masking (Beta): Applies masking only part of the data while masking based on specific conditions It is supported only for No-Spark-based deployments.
Important points to know
Common for unconditional and conditional column masking:
Column masking is not applied to Member Properties, Unknown and Calculated members, and Predefined time type hierarchy.
Currently, column masking does not support the SQL interface.
Partial masking on numerical dimension field is not supported.
The original column data is preserved while masking because numeric data is masked with a number, and a date is masked with a date. You can specify a fixed pattern or a Regex expression for any string data type.
The masked value is displayed while browsing the semantic model on any BI tool with an MDX connection.
If using Tilde (~) for column masking and want to apply a filter on the masked value from Kyvos UI, then you must change the value of the field value separator as the default value of the kyvos.filter.value.separator property is also Tilde (~). Hence, you must change the default value of this property so that column masking with the Tilde character can function.
To apply column masking to a pre-defined hierarchy, you must select the full name of the hierarchy.
You can also create, delete, update, save, and assign column masking rules by using the Security Rest API's.
For conditional column masking:
Data conditions are only allowed on dimensions (level or attribute). Conditions based on measures are not supported.
Conditional masking on date field is not supported.
Conditional masking on measure field is not supported.
Unconditional column masking
Anchor | ||||
---|---|---|---|---|
|
Unconditional column masking is used in Spark-based deployments where the entire column is masked uniformly. In this approach, any user who accesses the masked column will see only obfuscated or masked values rather than the actual data, regardless of their access permissions.
To apply unconditional column masking for Column Level Security (CLS), perform the following steps.
From the Toolbox, click Semantic Models.
Select the semantic model name from the list and click the Process tab if needed.
Click the Action menu (...) in the work area, then click Data Security.
If the option is not displayed, you must save the semantic model and try again.Click users or groups that this rule will apply to.
Click the plus sign in the Rules column.
Add a rule name and description.
From the Column Level area, click the Mask Data link, and then select the field on which you want to apply the column masking. By default, the Mask data is applied. This indicates unconditional data mask.
Click the value link, and the Mask with dialog box is displayed. You must enter the required value for unconditional column masking. The available choices vary depending on the data you are using.
For any string data type, choose one of the following:
Fixed: Use this option to specify a fixed value for column masking. Enter a value that you want to apply for column masking. The entered value is displayed in the Preview area.
NOTE: You can specify any character or special characters, such as #, *, @. If you keep the field blank, then while semantic model browsing, the field value is displayed as blank.
Regex: Use this option to specify a Regex expression for column masking.
Enter a Regex expression that you want to specify for the field value, and then provide a value that you want to use for column masking.
You can also select a Regex expression from the Choose from common expressions list.
To verify whether the Regex expression is successfully masked with the value, enter a relevant value in the Test Value field. The result is displayed in the Preview field. If the expression is not masked successfully, you can modify the expression, as needed.
NOTE: In an expression, the Delimiter (/) and the flags (g,m,i,u,s,d) are not supported.
Click the plus sign to add additional fields, if required.
Click Add.
Unconditional column masking using the Fixed pattern
...
Conditional column masking allows for more granular control by masking data in a column based on certain conditions.
...
panelIconId | atlassian-note |
---|---|
panelIcon | :note: |
bgColor | #DEEBFF |
Note
...
Kyvos does not support conditional masking on date field.
...
Partial masking on numerical dimension field is not supported
...
Merging of measure values for fully masked only attribute/single level hierarchy is not supported.
...
to add additional fields, if required.
Click Add.
Unconditional column masking using the Fixed pattern
...
Conditional masking (Beta)
Anchor | ||||
---|---|---|---|---|
|
Conditional column masking allows for more granular control by masking data in a column based on certain conditions.
To apply conditional column masking for Column Level Security (CLS), perform the following steps.
From the Toolbox, click Semantic Models.
Select the semantic model name from the list and click the Process tab if needed.
Click the Action menu (...) in the work area, then click Data Security.
If the option is not displayed, you must save the semantic model and try again.Click users or groups that this rule will apply to.
Click the plus sign in the Rules column.
Add a rule name and description.
From the Column Level area, click Mask Data and select Conditionally mask data, and then select the field on which you want to apply the column masking.
Click the Conditional Mask Data link and click the field link. The field list is displayed. Select the field that you want to conditionally mask.
Click the value link, and the Conditional Mask with dialog box is displayed. You must enter the required value for conditional column masking. The available choices vary depending on the data you are using.
For any string data type, choose one of the following:
Fixed: Use this option to specify a fixed value for column masking.
For any string data type, choose one of the following:Enter a value that you want to apply for column masking. The entered value is displayed in the Preview area.
NOTE: You can specify any character or special characters, such as #, *, @. If you keep the field blank, then while semantic model browsing, the field value is displayed as blank.
Regex: Use this option to specify a Regex expression for column masking.
Enter a Regex expression that you want to specify for the field value, and then provide a value that you want to use for column masking.
You can also select a Regex expression from the Choose from common expressions list.
To verify whether the Regex expression is successfully masked with the value, enter a relevant value in the Test Value field. The result is displayed in the Preview field. If the expression is not masked successfully, you can modify the expression, as needed.
NOTE: In an expression, the Delimiter (/) and the flags (g,m,i,u,s,d) are not supported.
Click the field link to select the field on which you want to apply conditional column masking.
Click the plus sign to add additional fields, if required.
Click Add.
...