[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-959?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15614682#comment-15614682
 ] 

Enrico Olivelli commented on BOOKKEEPER-959:
--------------------------------------------

[~merlimat] are you OK if I drop the 'extensions' from AuthMessage and add a 
fixed "bytes" field  ?
in the PR I have just added an extension, but with this new implementation it 
is not worth to have such extensions (we have to register the extension 
anywhere)

from

{code}
/**
 * Extendible message which auth mechanisms
 * can use to carry their payload.
 */
message AuthMessage {
    required string authPluginName = 1;
    extensions 1000 to max;
}
{code}

to

{code}
/**
 * Message which auth mechanisms
 * can use to carry their payload.
 */
message AuthMessage {
    required string authPluginName = 1;
    required bytes token = 2;
}
{code}


> ClientAuthProvider and BookieAuthProvider Public API used Protobuf Shaded 
> classes
> ---------------------------------------------------------------------------------
>
>                 Key: BOOKKEEPER-959
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-959
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: bookkeeper-client, bookkeeper-server
>    Affects Versions: 4.4.0
>            Reporter: Enrico Olivelli
>            Assignee: Enrico Olivelli
>            Priority: Blocker
>             Fix For: 4.5.0
>
>
> With 4.4.0 we introduced the ability to implement custom authentication 
> plugins.
> The new interfaces ClientAuthProvider and BookieAuthProvider depend on 
> ExtensionRegistry, which is a shaded dependency.
> As a consequence it is not possibile to implement any custom auth provider in 
> code outside the project, because shaded/relocated dependencies cannot be 
> used.
> We need to break the actual interface and introduce a new way to implement 
> such plugins in a portable way



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to