ldapmodify1
Ldap modify entry and ldap add entry tools
Usage
ldapmodify [-V
[V]]
[-d
debuglevel]
[-n]
[-v]
[-a]
[-c]
[-f
file]
[-i
time]
[-j
lineno]
[-S
file]
[-M
[M]]
[-x]
[-D
binddn]
[-W]
[-w
passwd]
[-y
passwdfile]
[-H
ldapuri]
[-P
{2 | 3}]
[-e
[!]
ext
[=extparam]]
[-E
[!]
ext
[=extparam]]
[-o
opt
[=optparam]]
[-O
security-properties]
[-I]
[-Q]
[-N]
[-U
authcid]
[-R
realm]
[-X
authzid]
[-Y
mech]
[-Z
[Z]]
ldapadd [-V
[V]]
[-d
debuglevel]
[-n]
[-v]
[-c]
[-f
file]
[-i
time]
[-j
lineno]
[-S
file]
[-M
[M]]
[-x]
[-D
binddn]
[-W]
[-w
passwd]
[-y
passwdfile]
[-H
ldapuri]
[-P
{2 | 3}]
[-e
[!]
ext
[=extparam]]
[-E
[!]
ext
[=extparam]]
[-o
opt
[=optparam]]
[-O
security-properties]
[-I]
[-Q]
[-N]
[-U
authcid]
[-R
realm]
[-X
authzid]
[-Y
mech]
[-Z
[Z]]
Overview
ldapmodify is a shell-accessible interface to the ldap_add_ext(3), ldap_modify_ext(3), ldap_delete_ext(3) and ldap_rename(3). library calls. ldapadd is implemented as a hard link to the ldapmodify tool. When invoked as ldapadd the -a (add new entry) flag is turned on automatically.
ldapmodify opens a connection to an LDAP server, binds, and modifies or adds entries. The entry information is read from standard input or from file through the use of the -f option.
Options
-
-V[V] -
Print version info. If
-VVis given, only the version information is printed.
-ddebuglevel-
Set the LDAP debugging level to debuglevel.
ldapmodifymust be compiled with LDAP_DEBUG defined for this option to have any effect.
-
-n -
Show what would be done, but don't actually modify entries. Useful for debugging in conjunction with
-v.
-
-v -
Use verbose mode, with many diagnostics written to standard output.
-
-a -
Add new entries. The default for
ldapmodifyis to modify existing entries. If invoked asldapadd, this flag is always set.
-
-c -
Continuous operation mode. Errors are reported, but
ldapmodifywill continue with modifications. The default is to exit after reporting an error.
-ffile-
Read the entry modification information from file instead of from standard input.
-itime-
Wait time microseconds before issuing an operation.
-jlineno-
Jump to the specified line number in the LDIF file before processing any entries. This allows a load that was aborted due to errors in the input LDIF to be resumed after the errors are corrected.
-Sfile-
Add or change records which were skipped due to an error are written to file and the error message returned by the server is added as a comment. Most useful in conjunction with
-c.
-
-M[M] -
Enable manage DSA IT control.
-MMmakes control critical.
-
-x -
Use simple authentication instead of SASL.
-Dbinddn-
Use the Distinguished Name binddn to bind to the LDAP directory. For SASL binds, the server is expected to ignore this value.
-
-W -
Prompt for simple authentication. This is used instead of specifying the password on the command line.
-wpasswd-
Use passwd as the password for simple authentication.
-ypasswdfile-
Use complete contents of passwdfile as the password for simple authentication.
-Hldapuri-
Specify URI(s) referring to the ldap server(s); only the protocol/host/port fields are allowed; a list of URI, separated by whitespace or commas is expected.
-
-P {2|3} -
Specify the LDAP protocol version to use.
-
-e [!]ext[=extparam]
-
-E [!]ext[=extparam] -
Specify general extensions with
-eand modify extensions with-E. ´!´ indicates criticality.General extensions:
[!]assert=<filter> (an RFC 4515 Filter) !authzid=<authzid> ("dn:<dn>" or "u:<user>") [!]bauthzid (RFC 3829 authzid control) [!]chaining[=<resolve>[/<cont>]] [!]manageDSAit [!]noop ppolicy [!]postread[=<attrs>] (a comma-separated attribute list) [!]preread[=<attrs>] (a comma-separated attribute list) [!]relax sessiontracking[=<username>] abandon,cancel,ignore (SIGINT sends abandon/cancel, or ignores response; if critical, doesn't wait for SIGINT. not really controls)Modify extensions:
[!]txn[=abort|commit]
-oopt[=optparam]]-
Specify any ldap.conf(5) option or one of the following:
nettimeout=<timeout> (in seconds, or "none" or "max") ldif_wrap=<width> (in columns, or "no" for no wrapping)
-Osecurity-properties-
Specify SASL security properties.
-
-I -
Enable SASL Interactive mode. Always prompt. Default is to prompt only as needed.
-
-Q -
Enable SASL Quiet mode. Never prompt.
-
-N -
Do not use reverse DNS to canonicalize SASL host name.
-Uauthcid-
Specify the authentication ID for SASL bind. The form of the ID depends on the actual SASL mechanism used.
-Rrealm-
Specify the realm of authentication ID for SASL bind. The form of the realm depends on the actual SASL mechanism used.
-Xauthzid-
Specify the requested authorization ID for SASL bind. authzid must be one of the following formats:
dn:<distinguished name> oru:<username>
-Ymech-
Specify the SASL mechanism to be used for authentication. If it's not specified, the program will choose the best mechanism the server knows.
-
-Z[Z] -
Issue StartTLS (Transport Layer Security) extended operation. If you use
-ZZ, the command will require the operation to be successful.
Input format
The contents of file (or standard input if no -f flag is given on the command line) must conform to the format defined in ldif(5) (LDIF as defined in RFC 2849).
Examples
Assuming that the file /tmp/entrymods exists and has the contents:
dn: cn=Modify Me,dc=example,dc=com
changetype: modify
replace: mail
mail: [email protected]
-
add: title
title: Grand Poobah
-
add: jpegPhoto
jpegPhoto:< file:///tmp/modme.jpeg
-
delete: description
-
the command:
ldapmodify -f /tmp/entrymods
will replace the contents of the "Modify Me" entry's mail attribute with the value "[email protected]", add a title of "Grand Poobah", and the contents of the file "/tmp/modme.jpeg" as a jpegPhoto, and completely remove the description attribute.
Assuming that the file /tmp/newentry exists and has the contents:
dn: cn=Barbara Jensen,dc=example,dc=com
objectClass: person
cn: Barbara Jensen
cn: Babs Jensen
sn: Jensen
title: the world's most famous mythical manager
mail: [email protected]
uid: bjensen
the command:
ldapadd -f /tmp/newentry
will add a new entry for Babs Jensen, using the values from the file /tmp/newentry.
Assuming that the file /tmp/entrymods exists and has the contents:
dn: cn=Barbara Jensen,dc=example,dc=com
changetype: delete
the command:
ldapmodify -f /tmp/entrymods
will remove Babs Jensen's entry.
Diagnostics
Exit status is zero if no errors occur. Errors result in a non-zero exit status and a diagnostic message being written to standard error.
Acknowledgements
OpenLDAP Software is developed and maintained by The OpenLDAP Project <http://www.openldap.org/>. OpenLDAP Software is derived from the University of Michigan LDAP 3.3 Release.
Releases
15 releases since Debian 2.1 (Slink); the text changed 13 times.
-E since Debian 6.0 (Squeeze);
-I since Debian 3.0 (Woody);
-M since Debian 3.0 (Woody);
-N since Debian 7 (Wheezy);
-P since Debian 6.0 (Squeeze);
-Q since Debian 3.0 (Woody);
-V since Debian 7 (Wheezy);
-W since Debian 3.0 (Woody);
-Z since Debian 3.0 (Woody);
-e since Debian 6.0 (Squeeze);
-x since Debian 3.0 (Woody).
-D until Debian 2.2 (Potato);
-F until Debian 4.0 (Etch);
-K until Debian 3.1 (Sarge);
-b until Debian 2.2 (Potato);
-d until Debian 2.2 (Potato);
-f until Debian 2.2 (Potato);
-h until Debian 2.2 (Potato);
-k until Debian 3.1 (Sarge);
-p until Debian 2.2 (Potato);
-r until Debian 2.2 (Potato);
-w until Debian 2.2 (Potato).