@Override
    // Keep this in sync with NettyGrpcServerFactory#configureSecurity
    protected void configureSecurity(final NettyServerBuilder builder) {
        final Security security = this.properties.getSecurity();
        if (security.isEnabled()) {
            // Provided server certificates
            final SslContextBuilder sslContextBuilder = newServerSslContextBuilder(security);

            // Accepted client certificates
            configureAcceptedClientCertificates(security, sslContextBuilder);

            // Other configuration
            if (security.getCiphers() != null && !security.getCiphers().isEmpty()) {
                sslContextBuilder.ciphers(security.getCiphers());
            }

            if (security.getProtocols() != null && security.getProtocols().length > 0) {
                sslContextBuilder.protocols(security.getProtocols());
            }

            try {
                builder.sslContext(sslContextBuilder.build());
            } catch (final SSLException e) {
                throw new IllegalStateException("Failed to create ssl context for grpc server", e);
            }
        }
    }
Creates a new shaded netty server factory with the given properties.

@param properties The properties used to configure the server.
@param serverConfigurers The server configurers to use. Can be empty.
grpc-server-spring-boot-starter/src/main/java/net/devh/boot/grpc/server/serverfactory/ShadedNettyGrpcServerFactory.java