grpc / grpc/grpc-java

Support SslMasterKeyHandler in NettyServerBuilder

Ouverte
#7,199 15 commentaires 1 réaction 0 personnes assignées Voir sur GitHub
enhancement good first issue
Langage dominant
Java
Étoiles
12.1k
Forks
4k
Merge moyen
2 j 17 h
PR mergées (30 j)
37

Description

I have a problem with adding SslMasterKeyHandler#newWireSharkSslMasterKeyHandler on the server side. I tried to do this with channelFactory:
```
builder.channelFactory(() -> {
final ServerChannel ch = GrpcUtil.getDefaultServerChannelFactory().newChannel();
final ChannelPipeline pipeline = ch.pipeline();
pipeline.addLast(SslMasterKeyHandler.newWireSharkSslMasterKeyHandler());
return ch;
})
```
and later with ProtocolNegotiator:
```
final SslContext sslContext = GrpcSslContexts.configure(sslClientContextBuilder).build();
final io.grpc.netty.ProtocolNegotiator negotiator = ProtocolNegotiators.serverTls(sslContext);
builder.protocolNegotiator(tlsNegotiator(negotiator);
```

In the first case, the setting had no effect. In the second case, the server worked incorrectly (it stopped accepting connections, even without a handler, just with a negotiator wrapper).

What should be the proper implementation?

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par NettyServerBuilder.channelFactory et protocolNegotiator, puis lisez SslMasterKeyHandler.newWireSharkSslMasterKeyHandler et ProtocolNegotiators.serverTls. Déterminez le point d’intégration pris en charge pour la gestion des clés maîtresses TLS côté serveur ; le travail est considéré comme terminé lorsque le handler fonctionne avec NettyServerBuilder sans empêcher le serveur d’accepter des connexions.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
grpc, java
Domaine
backend, backend-api-design, security
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.