ldapmodify (1) Linux Manual Page
ldapmodify, ldapadd – LDAP modify entry and LDAP add entry tools
Synopsis
ldapmodify [-V[V]] [-d ldapadd [-V[V]] [-d
Description
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 -VV is given, only the version information is printed.
- -d
debuglevel
- Set the LDAP debugging level to debuglevel. ldapmodify must 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 ldapmodify is to modify existing entries. If invoked as ldapadd, this flag is always set.
- -c
- Continuous operation mode. Errors are reported, but ldapmodify will continue with modifications. The default is to exit after reporting an error.
- -f
file
- Read the entry modification information from file instead of from standard input.
- -S
file
- 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. -MM makes control critical.
- -x
- Use simple authentication instead of SASL.
- -D
binddn
- 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.
- -w
passwd
- Use passwd as the password for simple authentication.
- -y
passwdfile
- Use complete contents of passwdfile as the password for simple authentication.
- -H
ldapuri
- 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.
- -h
ldaphost
- Specify an alternate host on which the ldap server is running. Deprecated in favor of -H.
- -p
ldapport
- Specify an alternate TCP port where the ldap server is listening. Deprecated in favor of -H.
- -P
{2|3}
- Specify the LDAP protocol version to use.
- -e
[!]ext[=extparam]
- -E
[!]ext[=extparam]
- Specify general extensions with -e and modify extensions with -E. ‘!‘ indicates criticality.
General extensions:
[!]assert=<filter> (an RFC 4515 Filter)
Modify extensions:
!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
abandon,cancel,ignore (SIGINT sends abandon/cancel,
or ignores response; if critical, doesn’t wait for SIGINT.
not really controls)[!]txn[=abort|commit]
- -o
opt [=optparam]]
- Specify general options.
General options:
nettimeout=<timeout> (in seconds, or "none" or "max")
ldif-wrap=<width> (in columns, or "no" for no wrapping)- -O
security-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.
- -U
authcid
- Specify the authentication ID for SASL bind. The form of the ID depends on the actual SASL mechanism used.
- -R
realm
- Specify the realm of authentication ID for SASL bind. The form of the realm depends on the actual SASL mechanism used.
- -X
authzid
- Specify the requested authorization ID for SASL bind. authzid must be one of the following formats: dn:<distinguished name> or u:<username>
- -Y
mech
- 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.
- Specify the LDAP protocol version to use.
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=comthe command:
changetype: modify
replace: mail
mail: modme [at] example.com
–
add: title
title: Grand Poobah
–
add: jpegPhoto
jpegPhoto:< file:///tmp/modme.jpeg
–
delete: description
–
ldapmodify -f /tmp/entrymodswill replace the contents of the "Modify Me" entry’s mail attribute with the value "modme [at] example.com", 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=comthe command:
objectClass: person
cn: Barbara Jensen
cn: Babs Jensen
sn: Jensen
title: the world’s most famous mythical manager
mail: bjensen [at] example.com
uid: bjensen
ldapadd -f /tmp/newentrywill 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=comthe command:
changetype: delete
ldapmodify -f /tmp/entrymodswill remove Babs Jensen’s entry.
