Class AuthorizationIdentityRequestControl

  • All Implemented Interfaces:
    java.io.Serializable

    @NotMutable
    @ThreadSafety(level=COMPLETELY_THREADSAFE)
    public final class AuthorizationIdentityRequestControl
    extends Control
    This class provides an implementation of the authorization identity bind request control as described in RFC 3829. It may be included in a bind request to request that the server include the authorization identity associated with the client connection in the bind response message, in the form of an AuthorizationIdentityResponseControl.

    The authorization identity request control is similar to the "Who Am I?" extended request as implemented in the WhoAmIExtendedRequest class. The primary difference between them is that the "Who Am I?" extended request can be used at any time but requires a separate operation, while the authorization identity request control can be included only with a bind request but does not require a separate operation.

    Example

    The following example demonstrates the use of the authorization identity request and response controls. It authenticates to the directory server and attempts to retrieve the authorization identity from the response:
     String authzID = null;
     BindRequest bindRequest =
          new SimpleBindRequest("uid=test.user,ou=People,dc=example,dc=com",
               "password", new AuthorizationIdentityRequestControl());
    
     BindResult bindResult = connection.bind(bindRequest);
     AuthorizationIdentityResponseControl authzIdentityResponse =
          AuthorizationIdentityResponseControl.get(bindResult);
     if (authzIdentityResponse != null)
     {
       authzID = authzIdentityResponse.getAuthorizationID();
     }
     
    See Also:
    Serialized Form
    • Constructor Detail

      • AuthorizationIdentityRequestControl

        public AuthorizationIdentityRequestControl()
        Creates a new authorization identity request control. The control will not be marked critical.
      • AuthorizationIdentityRequestControl

        public AuthorizationIdentityRequestControl​(boolean isCritical)
        Creates a new authorization identity request control.
        Parameters:
        isCritical - Indicates whether the control should be marked critical.
      • AuthorizationIdentityRequestControl

        public AuthorizationIdentityRequestControl​(@NotNull
                                                   Control control)
                                            throws LDAPException
        Creates a new authorization identity request control which is decoded from the provided generic control.
        Parameters:
        control - The generic control to be decoded as an authorization identity request control.
        Throws:
        LDAPException - If the provided control cannot be decoded as an authorization identity request control.
    • Method Detail

      • getControlName

        @NotNull
        public java.lang.String getControlName()
        Retrieves the user-friendly name for this control, if available. If no user-friendly name has been defined, then the OID will be returned.
        Overrides:
        getControlName in class Control
        Returns:
        The user-friendly name for this control, 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 LDAP control to the provided buffer.
        Overrides:
        toString in class Control
        Parameters:
        buffer - The buffer to which to append the string representation of this buffer.