Skip to content

Kerberos Authentication to Proxy on EventProcessorClient #39566

Open
@erdeminanc

Description

@erdeminanc

Query/Question
Currently EventProcessorClient supports Proxy Authentication via Basic and DIGEST. I need to setup the EventProcessorClient behind a corporate secure proxy and I need to authenticate to proxy via Kerberos.

I was able to create a custom HttpClient via implementing HttpClient of Azure and used it in BlobContainerAsyncClient as a result it connected to Blob Storage via using custom HttpClient configured with Kerberos authentication successfully.

I have also implemented HttpClientProvider of Azure and overriden createInstance method where I have returned my custom HttpClient implementation and forced it to use my implementation via setting the environment property like below:

AZURE_HTTP_CLIENT_IMPLEMENTATION: com.*.ApacheHttpClientProvider (full path here - star only for hiding details)

However EventProcessorClient doesn't work and logs below message on onError() callback with the below error message

Error occurred on partition: NONE. Error: java.io.IOException: Attempted read from closed stream.

Why is this not a Bug or a feature Request?
A clear explanation of why is this not a bug or a feature request?

On EventProcessorClient there is no direct call to .httpClient() or Kerberos Authentication under .proxyOptions().

Setup:

  • OS: Windows
  • IDE: IntelliJ
  • Library/Libraries: azure-messaging-eventhubs-checkpointstore-blob :1.19.0, azure-messaging-eventhubs:5.18.0

Information Checklist

  • [ x ] Query Added
  • [ x ] Setup information Added

Metadata

Metadata

Assignees

No one assigned

    Labels

    ClientThis issue points to a problem in the data-plane of the library.Event Hubsbacklogcustomer-reportedIssues that are reported by GitHub users external to the Azure organization.feature-requestThis issue requires a new behavior in the product in order be resolved.needs-team-attentionWorkflow: This issue needs attention from Azure service team or SDK teamquestionThe issue doesn't require a change to the product in order to be resolved. Most issues start as that

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions