You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using ColumnMask, I encounter an issue where ColumnMask is enabled before aggregation, rather than after aggregation.
For example, I have this table about person:
name
------
Jim
Bob
Then implement columnMask:
public class MySysAcl implements SystemAccessControl {
public Optional<ViewExpression> getColumnMask(SystemSecurityContext context, CatalogSchemaTableName cst, String columnName, Type type) {
return Optional.of(ViewExpression.builder()
.identity("root")
.catalog(cst.getCatalogName())
.schema(cst.getSchemaTableName().getSchemaName())
.expression("'***'")
.build());
}
}
}
When execute "SELECT * FROM T", looks fine:
name
-----
***
***
But when execute "SELECT COUNT(DISTINCT NAME) FROM T", I got:
count
-----
1
I believe it should return 2, as ColumnMask should take effect during display rather than during computation.
When using ColumnMask, I encounter an issue where ColumnMask is enabled before aggregation, rather than after aggregation.
For example, I have this table about person:
Then implement columnMask:
When execute "SELECT * FROM T", looks fine:
But when execute "SELECT COUNT(DISTINCT NAME) FROM T", I got:
I believe it should return 2, as ColumnMask should take effect during display rather than during computation.
Somebody has submitted similar issue: #17696.
If I want to perform column masking only when displaying query results, can I do it by implementing connector? Thanks very much!
The text was updated successfully, but these errors were encountered: