I'm the author of web2ldap. So my recommendation is biased of course.
But it's fun for me to point out its features by walking through your requirements:
- Not tightly integrated to any specific LDAP server (for example, Fedora Directory have a built-in editor, which is not useful with other LDAP directories)
See the LDAP servers mentioned on the compability list.
One of my personal use-cases is digging into unknown LDAP servers of my customers.
- Easy to use - preferably GUI, as command line programs tend to require quite a bit of memorized commands and keys.
"Easy to use" is a rather blurry term and really depends on whether people are willing to learn. web2ldap is a pure HTML application. Whether it matches your personal preferences is up to you.
- Obviously, adding/modifying/deleting objects and attributes.
Note that web2ldap has the most complete schema support of all LDAP clients out there to guide the user to do the right thing.
It also contains some measures to explicitly provoke conflicts when two people are modifying the same entry. Not sure whether other LDAP clients do something like this.
Schema changes are out-of-scope, but of course, some support is a plus.
There's no schema editor in web2ldap. And frankly I've never seen a good one and could not come up with a sufficiently good design one myself. Schema changes are rare anyway and personally I'm write schema like code.
But there's a very powerful schema viewer showing cross-references back and forth the schema descriptions including object class and attribute type inheritance. Much more powerful than everything else I've seen so far.
- Human readable attribute names - standard fields are not too self-explanatory (sn, cn, o, l etc.)
This is not solved at attribute level because there's no good solution at that level: Too many differences to cover.
Mainly you can use really simple HTML templates for designing parts of the user interface. You can customize those, e.g. using your own terms, adding documentation links to your internal Wiki, etc.
- Search for Objects in the tree - for example, users under specific organization
Of course all kinds of search operations are available. You can add your own HTML templates for different search forms.
Attributes and attribute values - when there's tens or hundreds of attributes for object, manually finding the right attribute is a bit cumbersome.
You can limit the attributes displayed but that's rather cumbersome.
I'd say simply use the web browser's search functionality to find the attribute in the page.
- Preferably batch editing: select multiple objects and edit specific attributes. For example, setting password expiration dates for multiple users.
web2ldap can do bulk modify on search results displayed before. Note that this is only useful for experienced users and of course you can shoot yourself in the foot very easily.
- Linking in UI: going from group page to group member page should be easy.
I'm a lazy guy. I'm too lazy to manually construct searches all the time while exploring entries.
Therefore I've implemented all kind of cross-linking between known attributes and entries, e.g. searching a member entry by memberUid value. Or finding relationship between DNS and DHCP entries. Etc.
Let me know if something is missing.
- Reverse relations: for example, (command to) show all groups user is member of.
Especially for groups there's a separate group administration UI.
- Connection profiles, supporting more than one server. It's annoying to enter server details when changing the server.
web2ldap displays persistent bookmarks:
- in the status bar
- when displaying search results
Check out the docs about persistent bookmarks. Those you can put in your Wiki so everybody just can click on them.
There's much more to say about features and configuration. Please consult the docs. Don't hesitate to ask if you need help.