presto-main/src/main/java/io/prestosql/security/AccessControlManager.java/AccessControlManager/filterTables
class AccessControlManager:    @Override
    public Set<SchemaTableName> filterTables(SecurityContext context, String catalogName, Set<SchemaTableName> tableNames)
    {
        requireNonNull(context, "context is null");
        requireNonNull(catalogName, "catalogName is null");
        requireNonNull(tableNames, "tableNames is null");

        if (filterCatalogs(context.getIdentity(), ImmutableSet.of(catalogName)).isEmpty()) {
            return ImmutableSet.of();
        }

        tableNames = systemAccessControl.get().filterTables(context.toSystemSecurityContext(), catalogName, tableNames);

        CatalogAccessControlEntry entry = getConnectorAccessControl(context.getTransactionId(), catalogName);
        if (entry != null) {
            tableNames = entry.getAccessControl().filterTables(entry.toConnectorSecurityContext(context), tableNames);
        }
        return tableNames;
    }