openldap/doc/man/man1/ldapcompare.1

230 lines
6.1 KiB
Groff
Raw Normal View History

2002-06-13 11:59:10 +08:00
.TH LDAPCOMPARE 1 "RELEASEDATE" "OpenLDAP LDVERSION"
.\" $OpenLDAP$
2010-04-14 06:17:29 +08:00
.\" Copyright 1998-2010 The OpenLDAP Foundation All Rights Reserved.
.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
.SH NAME
ldapcompare \- LDAP compare tool
.SH SYNOPSIS
.B ldapcompare
[\c
.BR \-n ]
[\c
.BR \-v ]
[\c
.BR \-z ]
[\c
2009-06-03 08:43:44 +08:00
.BR \-M [ M ]]
[\c
.BI \-d \ debuglevel\fR]
[\c
.BI \-D \ binddn\fR]
[\c
.BR \-W ]
[\c
2002-08-24 14:19:39 +08:00
.BI \-w \ passwd\fR]
[\c
.BI \-y \ passwdfile\fR]
[\c
.BI \-H \ ldapuri\fR]
[\c
.BI \-h \ ldaphost\fR]
[\c
.BI \-p \ ldapport\fR]
[\c
2009-06-03 08:43:44 +08:00
.BR \-P \ { 2 \||\| 3 }]
[\c
.BR \-e \ [ ! ] \fIext\fP [ =\fIextparam\fP ]]
[\c
.BR \-E \ [ ! ] \fIext\fP [ =\fIextparam\fP ]]
[\c
2009-06-03 08:43:44 +08:00
.BI \-O \ security-properties\fR]
[\c
.BR \-I ]
[\c
.BR \-Q ]
[\c
.BI \-U \ authcid\fR]
[\c
2002-09-03 03:25:10 +08:00
.BI \-R \ realm\fR]
[\c
.BR \-x ]
[\c
.BI \-X \ authzid\fR]
[\c
.BI \-Y \ mech\fR]
[\c
2009-06-03 08:43:44 +08:00
.BR \-Z [ Z ]]
.IR DN
{\c
.BI attr: value
|
.BI attr:: b64value\fR}
.SH DESCRIPTION
.I ldapcompare
is a shell-accessible interface to the
2006-06-14 08:28:16 +08:00
.BR ldap_compare_ext (3)
library call.
.LP
.B ldapcompare
opens a connection to an LDAP server, binds, and performs a compare
using specified parameters. The \fIDN\fP should be a distinguished
name in the directory. \fIAttr\fP should be a known attribute. If
followed by one colon, the assertion \fIvalue\fP should be provided
as a string. If followed by two colons, the base64 encoding of the
2003-12-19 07:24:49 +08:00
value is provided. The result code of the compare is provided as
2009-06-03 08:43:44 +08:00
the exit code and, unless ran with \fB\-z\fP, the program prints
2003-12-19 07:24:49 +08:00
TRUE, FALSE, or UNDEFINED on standard output.
.LP
.SH OPTIONS
.TP
.B \-n
Show what would be done, but don't actually perform the compare. Useful for
2009-06-03 08:43:44 +08:00
debugging in conjunction with \fB\-v\fP.
.TP
.B \-v
Run in verbose mode, with many diagnostics written to standard output.
.TP
.B \-z
Run in quiet mode, no output is written. You must check the return
status. Useful in shell scripts.
.TP
2009-06-03 08:43:44 +08:00
.BR \-M [ M ]
Enable manage DSA IT control.
.B \-MM
makes control critical.
.TP
.BI \-d \ debuglevel
Set the LDAP debugging level to \fIdebuglevel\fP.
.B ldapcompare
must be compiled with LDAP_DEBUG defined for this option to have any effect.
.TP
.B \-x
Use simple authentication instead of SASL.
.TP
.BI \-D \ binddn
Use the Distinguished Name \fIbinddn\fP to bind to the LDAP directory.
2009-06-03 08:43:44 +08:00
For SASL binds, the server is expected to ignore this value.
.TP
.B \-W
Prompt for simple authentication.
This is used instead of specifying the password on the command line.
.TP
2002-08-24 14:19:39 +08:00
.BI \-w \ passwd
Use \fIpasswd\fP as the password for simple authentication.
.TP
.BI \-y \ passwdfile
Use complete contents of \fIpasswdfile\fP as the password for
simple authentication.
2007-06-02 18:19:10 +08:00
Note that \fIcomplete\fP means that any leading or trailing whitespaces,
including newlines, will be considered part of the password and,
unlike other software, they will not be stripped.
As a consequence, passwords stored in files by commands like
.BR echo (1)
will not behave as expected, since
.BR echo (1)
by default appends a trailing newline to the echoed string.
The recommended portable way to store a cleartext password in a file
for use with this option is to use
.BR slappasswd (8)
2009-06-03 08:43:44 +08:00
with \fI{CLEARTEXT}\fP as hash and the option \fB\-n\fP.
.TP
.BI \-H \ ldapuri
2005-04-08 03:57:38 +08:00
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.
.TP
.BI \-h \ ldaphost
Specify an alternate host on which the ldap server is running.
2009-06-03 08:43:44 +08:00
Deprecated in favor of \fB\-H\fP.
.TP
.BI \-p \ ldapport
Specify an alternate TCP port where the ldap server is listening.
2009-06-03 08:43:44 +08:00
Deprecated in favor of \fB\-H\fP.
.TP
2009-06-03 08:43:44 +08:00
.BR \-P \ { 2 \||\| 3 }
Specify the LDAP protocol version to use.
.TP
.BR \-e \ [ ! ] \fIext\fP [ =\fIextparam\fP ]
.TP
.BR \-E \ [ ! ] \fIext\fP [ =\fIextparam\fP ]
Specify general extensions with \fB\-e\fP and search extensions with \fB\-E\fP.
\'\fB!\fP\' indicates criticality.
General extensions:
.nf
[!]assert=<filter> (an RFC 4515 Filter)
[!]authzid=<authzid> ("dn:<dn>" or "u:<user>")
[!]manageDSAit
[!]noop
ppolicy
[!]postread[=<attrs>] (a comma-separated attribute list)
[!]preread[=<attrs>] (a comma-separated attribute list)
abandon, cancel (SIGINT sends abandon/cancel; not really controls)
.fi
Search extensions:
.nf
[!]domainScope (domain scope)
[!]mv=<filter> (matched values filter)
[!]pr=<size>[/prompt|noprompt] (paged results/prompt)
[!]sss=[\-]<attr[:OID]>[/[\-]<attr[:OID]>...] (server side sorting)
[!]subentries[=true|false] (subentries)
[!]sync=ro[/<cookie>] (LDAP Sync refreshOnly)
rp[/<cookie>][/<slimit>] (LDAP Sync refreshAndPersist)
.fi
.TP
.BI \-O \ security-properties
Specify SASL security properties.
.TP
.B \-I
Enable SASL Interactive mode. Always prompt. Default is to prompt
only as needed.
.TP
.B \-Q
Enable SASL Quiet mode. Never prompt.
.TP
.BI \-U \ authcid
Specify the authentication ID for SASL bind. The form of the ID
depends on the actual SASL mechanism used.
.TP
2002-09-03 03:25:10 +08:00
.BI \-R \ realm
Specify the realm of authentication ID for SASL bind. The form of the realm
depends on the actual SASL mechanism used.
.TP
.BI \-X \ authzid
Specify the requested authorization ID for SASL bind.
.I authzid
must be one of the following formats:
2009-06-03 08:43:44 +08:00
.BI dn: "<distinguished name>"
or
2009-06-03 08:43:44 +08:00
.BI u: <username>
.TP
.BI \-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.
.TP
2009-06-03 08:43:44 +08:00
.BR \-Z [ Z ]
Issue StartTLS (Transport Layer Security) extended operation. If you use
2009-06-03 08:43:44 +08:00
\fB\-ZZ\fP, the command will require the operation to be successful.
2003-12-19 07:24:49 +08:00
.SH EXAMPLES
.nf
ldapcompare "uid=babs,dc=example,dc=com" sn:Jensen
ldapcompare "uid=babs,dc=example,dc=com" sn::SmVuc2Vu
.fi
are all equivalent.
2003-12-19 07:24:49 +08:00
.SH LIMITATIONS
Requiring the value be passed on the command line is limiting
and introduces some security concerns. The command should support
a mechanism to specify the location (file name or URL) to read
the value from.
.SH "SEE ALSO"
.BR ldap.conf (5),
.BR ldif (5),
.BR ldap (3),
2006-06-14 08:28:16 +08:00
.BR ldap_compare_ext (3)
.SH AUTHOR
The OpenLDAP Project <http://www.openldap.org/>
.SH ACKNOWLEDGEMENTS
2006-06-14 08:28:16 +08:00
.so ../Project