@Override
    public Set<String> getObjects() throws GuacamoleException {

        // Bypass permission checks if the user is a privileged
        ModeledAuthenticatedUser user = getCurrentUser();
        if (user.isPrivileged())
            return getObjectRelationMapper().selectChildIdentifiers(parent.getModel());

        // Otherwise only return explicitly readable identifiers
        return getObjectRelationMapper().selectReadableChildIdentifiers(
                user.getUser().getModel(), user.getEffectiveUserGroups(),
                getCaseSensitivity(),
                parent.getModel());

    }
Returns whether the current user has permission to alter the status of
the relation between the parent object and the given child objects.

@param identifiers
    The identifiers of all objects on the child side of the one-to-many
    relation being changed.

@return
    true if the user has permission to make the described changes,
    false otherwise.

@throws GuacamoleException
    If permission to query permission status is denied.
extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/base/RelatedObjectSet.java