You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Emmanuel Lecharny (JIRA)" <ji...@apache.org> on 2019/04/29 22:07:01 UTC

[jira] [Updated] (DIRAPI-298) Inconsistent SASL bind API

     [ https://issues.apache.org/jira/browse/DIRAPI-298?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny updated DIRAPI-298:
-------------------------------------
    Fix Version/s: 3.0.0

> Inconsistent SASL bind API
> --------------------------
>
>                 Key: DIRAPI-298
>                 URL: https://issues.apache.org/jira/browse/DIRAPI-298
>             Project: Directory Client API
>          Issue Type: Improvement
>            Reporter: Emmanuel Lecharny
>            Priority: Major
>             Fix For: 3.0.0
>
>
> We do have the following bind methods in {{LdapConnection}} :
> * {{void anonymousBind()}}
> * {{void bind()}}
> * {{void bind( String name )}}
> * {{void bind( String name, String credentials )}}
> * {{void bind( Dn name )}}
> * {{void bind( Dn name, String credentials )}}
> * {{BindResponse bind( BindRequest bindRequest )}}
> That does not cover any of the SASL binds.
> However, in the {{LdapNetworkConnection}}/{{AbstractLdapConnection}} implementation, we have the following SASL bind mehods :
> * {{void bind()}}
> * {{void bind( String name )}} (abstract)
> * {{void bind( String name, String credentials )}} (abstract)
> * {{void bind( Dn name )}} (abstract)
> * {{void bind( Dn name, String credentials )}} (abstract)
> * {{void anonymousBind()}}
> * {{BindResponse bind( BindRequest bindRequest )}}
> * {{BindResponse bind( SaslCramMd5Request request )}}
> * {{BindResponse bind( SaslDigestMd5Request request )}}
> * {{BindResponse bind( SaslGssApiRequest request )}}
> As we can see, we have dedicated methods for some of the SASL binds, but the SASL PLAIN ([https://docs.ldap.com/specs/rfc4616.txt]) and SASL ANONYMOUS ([https://docs.ldap.com/specs/rfc4616.txt]) are not present. 
> The {{bindSaslPlain}} method is commented in the interface.
> At this point, we probably have to implement the missing PLAIN and ANONYMOUS SASL bind methods, expose them in the interface, and probably add a {{bindSasl( SaslRequest )}} method to cover all our bases



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)