|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.unboundid.ldap.sdk.LDAPRequest
com.unboundid.ldap.sdk.ExtendedRequest
com.unboundid.ldap.sdk.unboundidds.extensions.DeliverPasswordResetTokenExtendedRequest
@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class DeliverPasswordResetTokenExtendedRequest
NOTE: This class is part of the Commercial Edition of the UnboundID LDAP SDK for Java. It is not available for use in applications that include only the Standard Edition of the LDAP SDK, and is not supported for use in conjunction with non-UnboundID products.This class provides an implementation of an extended request that can be used to trigger the delivery of a temporary one-time password reset token to a specified user. This token can be provided to the password modify extended request in lieu of the current password for the purpose of performing a self change and setting a new password. This token cannot be used to authenticate to the server in any other way, and it can only be used once. The token will expire after a short period of time, and any attempt to use it after its expiration will fail. In addition, because this token is only intended for use in the event that the current password cannot be used (e.g., because it has been forgotten or the account is locked), a successful bind with the current password will cause the server to invalidate any password reset token for that user.
DeliverOneTimePasswordExtendedRequest
. See the
ds-supported-otp-delivery-mechanism attribute in the root DSE for a list of
the one-time password delivery mechanisms that are configured for use in the
server.
DeliverPasswordResetTokenRequestValue ::= SEQUENCE { userDN LDAPDN, messageSubject [0] OCTET STRING OPTIONAL, fullTextBeforeToken [1] OCTET STRING OPTIONAL, fullTextAfterToken [2] OCTET STRING OPTIONAL, compactTextBeforeToken [3] OCTET STRING OPTIONAL, compactTextAfterToken [4] OCTET STRING OPTIONAL, preferredDeliveryMechanism [5] SEQUENCE OF SEQUENCE { mechanismName OCTET STRING, recipientID OCTET STRING OPTIONAL }, ... }
DeliverPasswordResetTokenExtendedResult
,
Serialized FormField Summary | |
---|---|
static java.lang.String |
DELIVER_PW_RESET_TOKEN_REQUEST_OID
The OID (1.3.6.1.4.1.30221.2.6.45) for the deliver password reset token extended request. |
Fields inherited from class com.unboundid.ldap.sdk.ExtendedRequest |
---|
TYPE_EXTENDED_REQUEST_OID, TYPE_EXTENDED_REQUEST_VALUE |
Constructor Summary | |
---|---|
DeliverPasswordResetTokenExtendedRequest(ExtendedRequest request)
Creates a new deliver password reset token extended request that is decoded from the provided extended request. |
|
DeliverPasswordResetTokenExtendedRequest(java.lang.String userDN,
java.util.List<ObjectPair<java.lang.String,java.lang.String>> preferredDeliveryMechanisms,
Control... controls)
Creates a new deliver password reset token extended request with the provided information. |
|
DeliverPasswordResetTokenExtendedRequest(java.lang.String userDN,
java.lang.String... preferredDeliveryMechanisms)
Creates a new deliver password reset token extended request with the provided information. |
|
DeliverPasswordResetTokenExtendedRequest(java.lang.String userDN,
java.lang.String messageSubject,
java.lang.String fullTextBeforeToken,
java.lang.String fullTextAfterToken,
java.lang.String compactTextBeforeToken,
java.lang.String compactTextAfterToken,
java.util.List<ObjectPair<java.lang.String,java.lang.String>> preferredDeliveryMechanisms,
Control... controls)
Creates a new deliver password reset token extended request with the provided information. |
Method Summary | |
---|---|
DeliverPasswordResetTokenExtendedRequest |
duplicate()
Creates a new instance of this LDAP request that may be modified without impacting this request. |
DeliverPasswordResetTokenExtendedRequest |
duplicate(Control[] controls)
Creates a new instance of this LDAP request that may be modified without impacting this request. |
java.lang.String |
getCompactTextAfterToken()
Retrieves the text (if any) that should appear after the single-use token in the message delivered to the user via a mechanism that imposes significant constraints on message size. |
java.lang.String |
getCompactTextBeforeToken()
Retrieves the text (if any) that should appear before the single-use token in the message delivered to the user via a mechanism that imposes significant constraints on message size. |
java.lang.String |
getExtendedRequestName()
Retrieves the user-friendly name for the extended request, if available. |
java.lang.String |
getFullTextAfterToken()
Retrieves the text (if any) that should appear after the single-use token in the message delivered to the user via a mechanism that does not impose significant constraints on message size. |
java.lang.String |
getFullTextBeforeToken()
Retrieves the text (if any) that should appear before the single-use token in the message delivered to the user via a mechanism that does not impose significant constraints on message size. |
java.lang.String |
getMessageSubject()
Retrieves the text (if any) that should be used as the message subject for delivery mechanisms that can make use of a subject. |
java.util.List<ObjectPair<java.lang.String,java.lang.String>> |
getPreferredDeliveryMechanisms()
Retrieves an ordered list of the preferred delivery mechanisms that should be used to provide the password reset token to the user, optionally paired with a mechanism-specific recipient ID (e.g., a mobile phone number for SMS delivery, or an email address for email delivery) that can be used in the delivery. |
java.lang.String |
getUserDN()
Retrieves the DN of the user to whom the password reset token should be delivered. |
DeliverPasswordResetTokenExtendedResult |
process(LDAPConnection connection,
int depth)
Sends this extended request to the directory server over the provided connection and returns the associated response. |
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of this request to the provided buffer. |
Methods inherited from class com.unboundid.ldap.sdk.ExtendedRequest |
---|
encodeProtocolOp, getLastMessageID, getOID, getOperationType, getProtocolOpType, getValue, hasValue, responseReceived, writeTo |
Methods inherited from class com.unboundid.ldap.sdk.LDAPRequest |
---|
followReferrals, getControl, getControlList, getControls, getIntermediateResponseListener, getResponseTimeoutMillis, hasControl, hasControl, setFollowReferrals, setIntermediateResponseListener, setResponseTimeoutMillis, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String DELIVER_PW_RESET_TOKEN_REQUEST_OID
Constructor Detail |
---|
public DeliverPasswordResetTokenExtendedRequest(java.lang.String userDN, java.lang.String... preferredDeliveryMechanisms)
userDN
- The DN of the user to whom the
password reset token should be
generated.preferredDeliveryMechanisms
- An optional ordered list of preferred
delivery mechanisms that should be
used to deliver the token to the user.
It may be null
or empty to
allow the server to select an
appropriate delivery mechanism. If it
is non-null
and non-empty,
then only the listed mechanisms will
be considered for use, even if the
server supports alternate mechanisms
not included in this list.public DeliverPasswordResetTokenExtendedRequest(java.lang.String userDN, java.util.List<ObjectPair<java.lang.String,java.lang.String>> preferredDeliveryMechanisms, Control... controls)
userDN
- The DN of the user to whom the
password reset token should be
generated.preferredDeliveryMechanisms
- An optional ordered list of preferred
delivery mechanisms that should be
used to deliver the token to the user.
It may be null
or empty to
allow the server to select an
appropriate delivery mechanism. If it
is non-null
and non-empty,
then only the listed mechanisms will
be considered for use, even if the
server supports alternate mechanisms
not included in this list. Each
ObjectPair
item must have
a non-null
value for the first
element, which is the name of the
target delivery mechanism. It may
optionally have a non-null
value for the second element, which is
a recipient ID to use for that
mechanism (e.g., the target mobile
phone number for SMS delivery, an
email address for email delivery,
etc.). If no recipient ID is provided
for a mechanism, then the server will
attempt to select a value for the
user.controls
- An optional set of controls to include
in the request. It may be
null
or empty if no controls
should be included in the request.public DeliverPasswordResetTokenExtendedRequest(java.lang.String userDN, java.lang.String messageSubject, java.lang.String fullTextBeforeToken, java.lang.String fullTextAfterToken, java.lang.String compactTextBeforeToken, java.lang.String compactTextAfterToken, java.util.List<ObjectPair<java.lang.String,java.lang.String>> preferredDeliveryMechanisms, Control... controls)
userDN
- The DN of the user to whom the
password reset token should be
generated.messageSubject
- The text (if any) that should be used
as the message subject if the delivery
mechanism accepts a subject. This may
be null
if no subject is
required or a subject should be
automatically generated.fullTextBeforeToken
- The text (if any) that should appear
before the generated password reset
token in the message delivered to the
user via a delivery mechanism that
does not impose significant
constraints on message size. This may
be null
if no text is required
before the token.fullTextAfterToken
- The text (if any) that should appear
after the generated password reset
token in the message delivered to the
user via a delivery mechanism that
does not impose significant
constraints on message size. This may
be null
if no text is required
after the token.compactTextBeforeToken
- The text (if any) that should appear
before the generated password reset
token in the message delivered to the
user via a delivery mechanism that
imposes significant constraints on
message size. This may be
null
if no text is required
before the token.compactTextAfterToken
- The text (if any) that should appear
after the generated password reset
token in the message delivered to the
user via a delivery mechanism that
imposes significant constraints on
message size. This may be
null
if no text is required
after the token.preferredDeliveryMechanisms
- An optional ordered list of preferred
delivery mechanisms that should be
used to deliver the token to the user.
It may be null
or empty to
allow the server to select an
appropriate delivery mechanism. If it
is non-null
and non-empty,
then only the listed mechanisms will
be considered for use, even if the
server supports alternate mechanisms
not included in this list. Each
ObjectPair
item must have
a non-null
value for the first
element, which is the name of the
target delivery mechanism. It may
optionally have a non-null
value for the second element, which is
a recipient ID to use for that
mechanism (e.g., the target mobile
phone number for SMS delivery, an
email address for email delivery,
etc.). If no recipient ID is provided
for a mechanism, then the server will
attempt to select a value for the
user.controls
- An optional set of controls to include
in the request. It may be
null
or empty if no controls
should be included in the request.public DeliverPasswordResetTokenExtendedRequest(ExtendedRequest request) throws LDAPException
request
- The generic extended request to decode as a deliver
password reset token request. It must not be
null
.
LDAPException
- If an unexpected problem occurs.Method Detail |
---|
public java.lang.String getUserDN()
public java.lang.String getMessageSubject()
null
if no
subject should be used, or if the delivery mechanism should
attempt to automatically determine a subject.public java.lang.String getFullTextBeforeToken()
null
if there
should not be any text before the token.public java.lang.String getFullTextAfterToken()
null
if there
should not be any text after the token.public java.lang.String getCompactTextBeforeToken()
null
if there
should not be any text before the token.public java.lang.String getCompactTextAfterToken()
null
if there
should not be any text after the token.public java.util.List<ObjectPair<java.lang.String,java.lang.String>> getPreferredDeliveryMechanisms()
public DeliverPasswordResetTokenExtendedResult process(LDAPConnection connection, int depth) throws LDAPException
process
in class ExtendedRequest
connection
- The connection to use to communicate with the directory
server.depth
- The current referral depth for this request. It should
always be one for the initial request, and should only
be incremented when following referrals.
LDAPException
- If a problem occurs while sending the request or
reading the response.public DeliverPasswordResetTokenExtendedRequest duplicate()
duplicate
in interface ReadOnlyLDAPRequest
duplicate
in class ExtendedRequest
public DeliverPasswordResetTokenExtendedRequest duplicate(Control[] controls)
duplicate
in interface ReadOnlyLDAPRequest
duplicate
in class ExtendedRequest
controls
- The set of controls to include in the duplicate request.
public java.lang.String getExtendedRequestName()
getExtendedRequestName
in class ExtendedRequest
public void toString(java.lang.StringBuilder buffer)
toString
in interface ProtocolOp
toString
in interface ReadOnlyLDAPRequest
toString
in class ExtendedRequest
buffer
- The buffer to which to append a string representation of
this request.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |