Overview#
LDAP message is the fundamental Protocol Data Unit for LDAP Protocol Exchanges.LDAP Message is the container that is used to hold all LDAP Requests and LDAP Result Codes.
LDAP Message are "officially" defined an IANA Registry as defined Internet Assigned Numbers Authority (IANA) Considerations for the Lightweight Directory Access Protocol (LDAP) by RFC 4520.
LDAP Message are in an IANA Registry at: LDAP Message Types
And we outline them below:
Name | Code | Owner | Reference |
---|---|---|---|
Bind Request | 0 | IESG | RFC 4513RFC 4511 |
Bind Response | 1 | IESG | RFC 4513RFC 4511 |
Unbind Request | 2 | IESG | RFC 4511 |
search Request | 3 | IESG | RFC 4511 |
search Result Entry | 4 | IESG | RFC 4511 |
search Result Done | 5 | IESG | RFC 4511 |
Modify Request | 6 | IESG | RFC 4511 |
Modify Response | 7 | IESG | RFC 4511 |
Add Request | 8 | IESG | RFC 4511 |
Add Response | 9 | IESG | RFC 4511 |
Delete Request | 10 | IESG | RFC 4511 |
Delete Response | 11 | IESG | RFC 4511 |
Modify DN Request | 12 | IESG | RFC 4511 |
Modify DN Response | 13 | IESG | RFC 4511 |
Compare Request | 14 | IESG | RFC 4511 |
compare Response | 15 | IESG | RFC 4511 |
Abandon Request | 16 | IESG | RFC 4511 |
reserved | 17-18 | IESG | |
Search Result Reference | 19 | IESG | RFC 4511 |
reserved | 20-22 | IESG | |
Extended Request | 23 | IESG | RFC 4511 |
Extended Response | 24 | IESG | RFC 4511 |
intermediate Response | 25 | IESG | RFC 3771 |
The elements of the LDAP Message include:
- The message ID is a unique identifier that is used to correlate requests and responses. The client includes a message ID in the request and all response messages for that request will have the same message ID.
- The LDAP Message is the container for the actual LDAP Message and LDAP Result Codes.
- An optional set of LDAP Protocol Mechanisms may be used to provide additional information about the way that the request should be processed, or additional information about the response from the server.
LDAP Message in Basic Encoding Rules Format#
LDAPMessage ::= SEQUENCE { messageID MessageID, protocolOp CHOICE { bindRequest BindRequest, bindResponse BindResponse, unbindRequest UnbindRequest, searchRequest SearchRequest, searchResEntry SearchResultEntry, searchResDone SearchResultDone, searchResRef SearchResultReference, modifyRequest ModifyRequest, modifyResponse ModifyResponse, addRequest AddRequest, addResponse AddResponse, delRequest DelRequest, delResponse DelResponse, modDNRequest ModifyDNRequest, modDNResponse ModifyDNResponse, compareRequest CompareRequest, compareResponse CompareResponse, abandonRequest AbandonRequest, extendedReq ExtendedRequest, extendedResp ExtendedResponse, ..., intermediateResponse IntermediateResponse }, controls [0] Controls OPTIONAL }
More Information#
There might be more information for this subject on one of the following:- Access Log
- Add Request
- Add Response
- Basic Encoding Rules
- Bind Request
- Bind Response
- CRAM-MD5 SASL Mechanism
- Compare Request
- DefinitionProtocolOp
- Delete Request
- Delete Response
- Differences between LDAP 2 and 3 Protocols
- EDirectory LDAP Transaction
- Event 2889
- Glossary Of LDAP And Directory Terminology
- LDAP
- LDAP Message
- LDAP Overview
- LDAP Protocol Exchanges
- LDAP Request
- LDAP Result
- LDAPServerIntegrity
- LDAP_SERVER_BATCH_REQUEST_OID
- Lightweight Directory Access Protocol
- Lightweight Directory Access Protocol (LDAP) Parameters
- MaxBatchReturnMessages
- Message ID
- Modify DN Response
- Modify Request
- Modify Response
- ModifyDNRequest
- PASSWD_NOTREQD
- Protocol Data Unit
- SearchRequest
- SearchResultDone
- SearchResultEntry
- SearchResultReference
- Start Transaction Response
- SupportedControl
- Unbind Request
- Unsolicited Notification