You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Gwen Shapira (JIRA)" <ji...@apache.org> on 2015/06/11 07:57:00 UTC
[jira] [Updated] (KAFKA-1882) Create extendable channel interface
and default implementations
[ https://issues.apache.org/jira/browse/KAFKA-1882?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gwen Shapira updated KAFKA-1882:
--------------------------------
Fix Version/s: (was: 0.8.3)
> Create extendable channel interface and default implementations
> ---------------------------------------------------------------
>
> Key: KAFKA-1882
> URL: https://issues.apache.org/jira/browse/KAFKA-1882
> Project: Kafka
> Issue Type: Sub-task
> Components: security
> Reporter: Gwen Shapira
> Assignee: Gwen Shapira
> Priority: Blocker
>
> For the security infrastructure, we need an extendible interface to replace SocketChannel.
> KAFKA-1684 suggests extending SocketChannel itself, but since SocketChannel is part of Java's standard library, the interface changes between different Java versions, so extending it directly can become a compatibility issue.
> Instead, we can implement a KafkaChannel interface, which will implement connect(), read(), write() and possibly other methods we use.
> We will replace direct use of SocketChannel in our code with use of KafkaChannel.
> Different implementations of KafkaChannel will be instantiated based on the port/SecurityProtocol configuration.
> This patch will provide at least the PLAINTEXT implementation for KafkaChannel.
> I will validate that the SSL implementation in KAFKA-1684 can be refactored to use a KafkaChannel interface rather than extend SocketChannel directly. However, the patch will not include the SSL channel itself.
> The interface should also include setters/getters for principal and remote IP, which will be used for the authentication code.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)