[
https://issues.apache.org/jira/browse/TINKERPOP-2374?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jermy Li updated TINKERPOP-2374:
--------------------------------
Description:
When we use the following configuration and keep http connection alive, some
requests will fail to get authorization information during consecutive requests.
{code:yaml}
channelizer: org.apache.tinkerpop.gremlin.server.channel.WsAndHttpChannelizer
authentication: {
authenticationHandler:
org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler,
}
{code}
We expect the sequence in the pipeline to be:
{code:java}
(http-response-encoder = io.netty.handler.codec.http.HttpResponseEncoder),
(authenticator =
org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler),
(http-authentication =
org.apache.tinkerpop.gremlin.server.handler.HttpBasicAuthenticationHandler),
(request-handler =
org.apache.tinkerpop.gremlin.server.handler.HttpGremlinEndpointHandler),
{code}
authenticator -> {color:#ff0000}http-authentication{color} -> request-handler
But sometimes its order becomes the following, so that user information cannot
be obtained:
{code:java}
(http-response-encoder = io.netty.handler.codec.http.HttpResponseEncoder),
(authenticator =
org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler),
(request-handler =
org.apache.tinkerpop.gremlin.server.handler.HttpGremlinEndpointHandler),
(http-authentication =
org.apache.tinkerpop.gremlin.server.handler.HttpBasicAuthenticationHandler),
{code}
authenticator -> request-handler -> {color:#ff0000}http-authentication{color}
was:
When we use the following configuration and keep http connection alive, some
requests will fail to get user information during consecutive requests
{code:yaml}
channelizer: org.apache.tinkerpop.gremlin.server.channel.WsAndHttpChannelizer
authentication: {
authenticationHandler:
org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler,
}
{code}
We expect the sequence in the pipeline to be:
{code:java}
(http-response-encoder = io.netty.handler.codec.http.HttpResponseEncoder),
(authenticator =
org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler),
(http-authentication =
org.apache.tinkerpop.gremlin.server.handler.HttpBasicAuthenticationHandler),
(request-handler =
org.apache.tinkerpop.gremlin.server.handler.HttpGremlinEndpointHandler),
{code}
authenticator -> {color:#FF0000}http-authentication{color} -> request-handler
But sometimes its order becomes the following, so that user information cannot
be obtained:
{code:java}
(http-response-encoder = io.netty.handler.codec.http.HttpResponseEncoder),
(authenticator =
org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler),
(request-handler =
org.apache.tinkerpop.gremlin.server.handler.HttpGremlinEndpointHandler),
(http-authentication =
org.apache.tinkerpop.gremlin.server.handler.HttpBasicAuthenticationHandler),
{code}
authenticator -> request-handler -> {color:#FF0000}http-authentication{color}
> SaslAndHttpBasicAuthenticationHandler can't extract authorization
> -----------------------------------------------------------------
>
> Key: TINKERPOP-2374
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2374
> Project: TinkerPop
> Issue Type: Bug
> Reporter: Jermy Li
> Priority: Major
>
> When we use the following configuration and keep http connection alive, some
> requests will fail to get authorization information during consecutive
> requests.
> {code:yaml}
> channelizer: org.apache.tinkerpop.gremlin.server.channel.WsAndHttpChannelizer
> authentication: {
> authenticationHandler:
> org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler,
> }
> {code}
>
> We expect the sequence in the pipeline to be:
> {code:java}
> (http-response-encoder = io.netty.handler.codec.http.HttpResponseEncoder),
> (authenticator =
> org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler),
>
> (http-authentication =
> org.apache.tinkerpop.gremlin.server.handler.HttpBasicAuthenticationHandler),
> (request-handler =
> org.apache.tinkerpop.gremlin.server.handler.HttpGremlinEndpointHandler),
> {code}
> authenticator -> {color:#ff0000}http-authentication{color} -> request-handler
> But sometimes its order becomes the following, so that user information
> cannot be obtained:
> {code:java}
> (http-response-encoder = io.netty.handler.codec.http.HttpResponseEncoder),
> (authenticator =
> org.apache.tinkerpop.gremlin.server.handler.SaslAndHttpBasicAuthenticationHandler),
>
> (request-handler =
> org.apache.tinkerpop.gremlin.server.handler.HttpGremlinEndpointHandler),
> (http-authentication =
> org.apache.tinkerpop.gremlin.server.handler.HttpBasicAuthenticationHandler),
> {code}
> authenticator -> request-handler -> {color:#ff0000}http-authentication{color}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)