@Override
    public Map<String, String> getAttributes() {

        // Make a copy of the existing map
        Map<String, String> attributes = Maps.newHashMap(super.getAttributes());

        // Figure out if user-level KSM config is enabled
        boolean userKsmConfigEnabled = false;
        try {
            userKsmConfigEnabled = configurationService.getAllowUserConfig();
        } catch (GuacamoleException e) {

            logger.warn(
                    "Disabling user KSM config due to exception: {}"
                    , e.getMessage());
            logger.debug("Error looking up if user KSM config is enabled.", e);

        }

        // If user-specific KSM configuration is not enabled, do not expose the
        // attribute at all
        if (!userKsmConfigEnabled)
            attributes.remove(KsmAttributeService.KSM_CONFIGURATION_ATTRIBUTE);

        else
            // Sanitize the KSM configuration attribute, and ensure the attribute
            // is always present
            attributes.put(
                    KsmAttributeService.KSM_CONFIGURATION_ATTRIBUTE,
                    KsmAttributeService.sanitizeKsmAttributeValue(
                        attributes.get(KsmAttributeService.KSM_CONFIGURATION_ATTRIBUTE)));

        return attributes;
    }
Return the underlying wrapped user record.

@return
    The wrapped user record.
extensions/guacamole-vault/modules/guacamole-vault-ksm/src/main/java/org/apache/guacamole/vault/ksm/user/KsmUser.java