presto-main/src/main/java/io/prestosql/security/AccessControlManager.java/AccessControlManager/filterColumns
class AccessControlManager:    @Override
    public List<ColumnMetadata> filterColumns(SecurityContext context, CatalogSchemaTableName table, List<ColumnMetadata> columns)
    {
        requireNonNull(context, "context is null");
        requireNonNull(table, "tableName is null");

        if (filterTables(context, table.getCatalogName(), ImmutableSet.of(table.getSchemaTableName())).isEmpty()) {
            return ImmutableList.of();
        }

        columns = systemAccessControl.get().filterColumns(context.toSystemSecurityContext(), table, columns);

        CatalogAccessControlEntry entry = getConnectorAccessControl(context.getTransactionId(), table.getCatalogName());
        if (entry != null) {
            columns = entry.getAccessControl().filterColumns(entry.toConnectorSecurityContext(context), table.getSchemaTableName(), columns);
        }
        return columns;
    }