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

Tsz-wo Sze updated RATIS-2537:
------------------------------
    Attachment: 1462_review.patch

> Support configurable gRPC TLS provider and cipher suites
> --------------------------------------------------------
>
>                 Key: RATIS-2537
>                 URL: https://issues.apache.org/jira/browse/RATIS-2537
>             Project: Ratis
>          Issue Type: Improvement
>          Components: gRPC
>    Affects Versions: 3.2.2
>            Reporter: Haonan Hou
>            Assignee: Haonan Hou
>            Priority: Major
>         Attachments: 1462_review.patch
>
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> *Description*
> Ratis gRPC TLS currently does not allow users to configure the underlying TLS 
> provider or cipher suites.
> In Ratis 3.2.2, server-side TLS explicitly uses Netty OPENSSL:
> {{}}
> {code:java}
> GrpcSslContexts.configure(b, OPENSSL){code}
> {{{}{}}}Client-side TLS uses GrpcSslContexts.forClient(), which also prefers 
> OPENSSL when available.
> This makes it hard for downstream projects to use JDK/JSSE providers such as 
> BCJSSE, OpenJSSE, or other custom providers, and also prevents configuring 
> compliance-specific TLS protocols and cipher suites.
> *Request*
> Please expose configuration options for:
> {code:java}
> raft.grpc.tls.ssl.provider=JDK|OPENSSL|OPENSSL_REFCNT
> raft.grpc.tls.jsse.provider.name=BCJSSE
> raft.grpc.tls.protocols=TLSv1.3,TLSv1.2
> raft.grpc.tls.cipher.suites=...{code}
> When unset, current behavior should remain unchanged.
> *Expected*
> Ratis gRPC client and server should both be able to use configurable TLS 
> provider, JSSE provider, protocols, and cipher suites.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to