Hi,

to support Novell eDirectory GUID, you can modify some lines of codes..

1) [project keycloak-model-api] -> class: org.keycloak.models.LDAPConstants

- adding a new vendor constant (   public static final String VENDOR_NOVELL_EDIRECTORY="edirectory";)

2) [project keycloak-picketlink-ldap] -> class: org.keycloak.picketlink.ldap.PartitionManagerRegistry

// RHDS is using "nsuniqueid" as unique identifier instead of "entryUUID"
// Novell eDirectory use "guid"
        if (vendor != null && vendor.equals(LDAPConstants.VENDOR_RHDS)) {
            ldapStoreBuilder.uniqueIdentifierAttributeName("nsuniqueid");
        } else if (LDAPConstants.VENDOR_TIVOLI.equals(vendor)) {
            ldapStoreBuilder.uniqueIdentifierAttributeName("uniqueidentifier");
        } else if (LDAPConstants.VENDOR_NOVELL_EDIRECTORY.equals(vendor)) {
            ldapStoreBuilder.uniqueIdentifierAttributeName("guid");
        }

3) [project keycloak-forms-common-themes] -> file: users.js

 $scope.ldapVendors = [
        { "id": "ad", "name": "Active Directory" },
        { "id": "rhds", "name": "Red Hat Directory Server" },
        { "id": "tivoli", "name": "Tivoli" },
        { "id": "edirectory", "name": "eDirectory " },
        { "id": "other", "name": "Other" }
    ];


What do you think about? I need more time to test my patch.. the keycloak project not compiles in my workspace...

Best Regards

Fiorenzo Pizza