Class RegisterYubiKeyOTPDeviceExtendedRequest
- java.lang.Object
-
- com.unboundid.ldap.sdk.LDAPRequest
-
- com.unboundid.ldap.sdk.ExtendedRequest
-
- com.unboundid.ldap.sdk.unboundidds.extensions.RegisterYubiKeyOTPDeviceExtendedRequest
-
- All Implemented Interfaces:
ProtocolOp
,ReadOnlyLDAPRequest
,java.io.Serializable
@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class RegisterYubiKeyOTPDeviceExtendedRequest extends ExtendedRequest
This class provides an implementation of an extended request that may be used to register a YubiKey OTP device with the Directory Server so that it may be used to authenticate using the UNBOUNDID-YUBIKEY-OTP SASL mechanism.
NOTE: This class, and other classes within the
com.unboundid.ldap.sdk.unboundidds
package structure, are only supported for use against Ping Identity, UnboundID, and Nokia/Alcatel-Lucent 8661 server products. These classes provide support for proprietary functionality or for external specifications that are not considered stable or mature enough to be guaranteed to work in an interoperable way with other types of LDAP servers.
This extended request has an OID of 1.3.6.1.4.1.30221.2.6.54, and it must include a request value with the following encoding:
RegisterYubiKeyOTPDeviceRequest ::= SEQUENCE { authenticationID [0] OCTET STRING OPTIONAL, staticPassword [1] OCTET STRING OPTIONAL, yubiKeyOTP [2] OCTET STRING, ... }
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
REGISTER_YUBIKEY_OTP_DEVICE_REQUEST_OID
The OID (1.3.6.1.4.1.30221.2.6.54) for the register YubiKey OTP device extended request.-
Fields inherited from class com.unboundid.ldap.sdk.ExtendedRequest
TYPE_EXTENDED_REQUEST_OID, TYPE_EXTENDED_REQUEST_VALUE
-
-
Constructor Summary
Constructors Constructor Description RegisterYubiKeyOTPDeviceExtendedRequest(ExtendedRequest request)
Creates a new register YubiKey OTP device extended request that is decoded from the provided generic extended request.RegisterYubiKeyOTPDeviceExtendedRequest(java.lang.String authenticationID, byte[] staticPassword, java.lang.String yubiKeyOTP, Control... controls)
Creates a new register YubiKey OTP device extended request with the provided information.RegisterYubiKeyOTPDeviceExtendedRequest(java.lang.String yubiKeyOTP, Control... controls)
Creates a new register YubiKey OTP device extended request that will be used to register a new device for the user as whom the underlying connection is authenticated.RegisterYubiKeyOTPDeviceExtendedRequest(java.lang.String authenticationID, java.lang.String staticPassword, java.lang.String yubiKeyOTP, Control... controls)
Creates a new register YubiKey OTP device extended request with the provided information.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RegisterYubiKeyOTPDeviceExtendedRequest
duplicate()
Creates a new instance of this LDAP request that may be modified without impacting this request.RegisterYubiKeyOTPDeviceExtendedRequest
duplicate(Control[] controls)
Creates a new instance of this LDAP request that may be modified without impacting this request.java.lang.String
getAuthenticationID()
Retrieves the authentication ID that identifies the user for whom the YubiKey OTP device is to be registered, if provided.java.lang.String
getExtendedRequestName()
Retrieves the user-friendly name for the extended request, if available.byte[]
getStaticPasswordBytes()
Retrieves the bytes that comprise the static password for the target user, if provided.java.lang.String
getStaticPasswordString()
Retrieves the string representation of the static password for the target user, if provided.java.lang.String
getYubiKeyOTP()
Retrieves a one-time password generated by the YubiKey device to be registered.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, process, responseReceived, toCode, writeTo
-
Methods inherited from class com.unboundid.ldap.sdk.LDAPRequest
followReferrals, getControl, getControlList, getControls, getIntermediateResponseListener, getReferralConnector, getReferralConnectorInternal, getReferralDepth, getResponseTimeoutMillis, hasControl, hasControl, setFollowReferrals, setIntermediateResponseListener, setReferralConnector, setReferralDepth, setResponseTimeoutMillis, toString
-
-
-
-
Field Detail
-
REGISTER_YUBIKEY_OTP_DEVICE_REQUEST_OID
@NotNull public static final java.lang.String REGISTER_YUBIKEY_OTP_DEVICE_REQUEST_OID
The OID (1.3.6.1.4.1.30221.2.6.54) for the register YubiKey OTP device extended request.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
RegisterYubiKeyOTPDeviceExtendedRequest
public RegisterYubiKeyOTPDeviceExtendedRequest(@NotNull java.lang.String yubiKeyOTP, @Nullable Control... controls)
Creates a new register YubiKey OTP device extended request that will be used to register a new device for the user as whom the underlying connection is authenticated.- Parameters:
yubiKeyOTP
- A one-time password generated by the YubiKey device to be registered. It must not benull
.controls
- The set of controls to include in the request. It may benull
or empty if there should not be any request controls.
-
RegisterYubiKeyOTPDeviceExtendedRequest
public RegisterYubiKeyOTPDeviceExtendedRequest(@Nullable java.lang.String authenticationID, @Nullable java.lang.String staticPassword, @NotNull java.lang.String yubiKeyOTP, @Nullable Control... controls)
Creates a new register YubiKey OTP device extended request with the provided information.- Parameters:
authenticationID
- The authentication ID that identifies the user for whom the YubiKey OTP device is to be registered. It may benull
if the device is to be registered for the user as whom the underlying connection is authenticated.staticPassword
- The static password of the user for whom the device is to be registered. It may benull
if the device is to be registered for a user other than the user authenticated on the underlying connection and the server is configured to not require the target user's static password in this case.yubiKeyOTP
- A one-time password generated by the YubiKey device to be registered. It must not benull
.controls
- The set of controls to include in the request. It may benull
or empty if there should not be any request controls.
-
RegisterYubiKeyOTPDeviceExtendedRequest
public RegisterYubiKeyOTPDeviceExtendedRequest(@Nullable java.lang.String authenticationID, @Nullable byte[] staticPassword, @NotNull java.lang.String yubiKeyOTP, @Nullable Control... controls)
Creates a new register YubiKey OTP device extended request with the provided information.- Parameters:
authenticationID
- The authentication ID that identifies the user for whom the YubiKey OTP device is to be registered. It may benull
if the device is to be registered for the user as whom the underlying connection is authenticated.staticPassword
- The static password of the user for whom the device is to be registered. It may benull
if the device is to be registered for a user other than the user authenticated on the underlying connection and the server is configured to not require the target user's static password in this case.yubiKeyOTP
- A one-time password generated by the YubiKey device to be registered. It must not benull
.controls
- The set of controls to include in the request. It may benull
or empty if there should not be any request controls.
-
RegisterYubiKeyOTPDeviceExtendedRequest
public RegisterYubiKeyOTPDeviceExtendedRequest(@NotNull ExtendedRequest request) throws LDAPException
Creates a new register YubiKey OTP device extended request that is decoded from the provided generic extended request.- Parameters:
request
- The generic extended request to decode as a register YubiKey OTP device request.- Throws:
LDAPException
- If a problem is encountered while attempting to decode the provided request.
-
-
Method Detail
-
getAuthenticationID
@Nullable public java.lang.String getAuthenticationID()
Retrieves the authentication ID that identifies the user for whom the YubiKey OTP device is to be registered, if provided.- Returns:
- The authentication ID that identifies the target user, or
null
if the device is to be registered as the user as whom the underlying connection is authenticated.
-
getStaticPasswordString
@Nullable public java.lang.String getStaticPasswordString()
Retrieves the string representation of the static password for the target user, if provided.- Returns:
- The string representation of the static password for the target
user, or
null
if no static password was provided.
-
getStaticPasswordBytes
@Nullable public byte[] getStaticPasswordBytes()
Retrieves the bytes that comprise the static password for the target user, if provided.- Returns:
- The bytes that comprise the static password for the target user,
or
null
if no static password was provided.
-
getYubiKeyOTP
@NotNull public java.lang.String getYubiKeyOTP()
Retrieves a one-time password generated by the YubiKey device to be registered.- Returns:
- A one-time password generated by the YubiKey device to be registered.
-
duplicate
@NotNull public RegisterYubiKeyOTPDeviceExtendedRequest duplicate()
Creates a new instance of this LDAP request that may be modified without impacting this request.. Subclasses should override this method to return a duplicate of the appropriate type.- Specified by:
duplicate
in interfaceReadOnlyLDAPRequest
- Overrides:
duplicate
in classExtendedRequest
- Returns:
- A new instance of this LDAP request that may be modified without impacting this request.
-
duplicate
@NotNull public RegisterYubiKeyOTPDeviceExtendedRequest duplicate(@Nullable Control[] controls)
Creates a new instance of this LDAP request that may be modified without impacting this request. The provided controls will be used for the new request instead of duplicating the controls from this request.. Subclasses should override this method to return a duplicate of the appropriate type.- Specified by:
duplicate
in interfaceReadOnlyLDAPRequest
- Overrides:
duplicate
in classExtendedRequest
- Parameters:
controls
- The set of controls to include in the duplicate request.- Returns:
- A new instance of this LDAP request that may be modified without impacting this request.
-
getExtendedRequestName
@NotNull public java.lang.String getExtendedRequestName()
Retrieves the user-friendly name for the extended request, if available. If no user-friendly name has been defined, then the OID will be returned.- Overrides:
getExtendedRequestName
in classExtendedRequest
- Returns:
- The user-friendly name for this extended request, or the OID if no user-friendly name is available.
-
toString
public void toString(@NotNull java.lang.StringBuilder buffer)
Appends a string representation of this request to the provided buffer.- Specified by:
toString
in interfaceProtocolOp
- Specified by:
toString
in interfaceReadOnlyLDAPRequest
- Overrides:
toString
in classExtendedRequest
- Parameters:
buffer
- The buffer to which to append a string representation of this request.
-
-