Как отключить взаимную аутентификацию для определенного URL - PullRequest
0 голосов
/ 24 октября 2019

В проекте, над которым я работаю, мы настроили наш текущий Jetty Server со следующими конфигами:

        SslContextFactory sslContextFactory = new SslContextFactory();

        sslContextFactory.setKeyStorePath(tlsCfg.tlsKeystoreLocation);
        sslContextFactory.setKeyStorePassword(tlsCfg.tlsKeystorePassword);
        sslContextFactory.setNeedClientAuth(tlsCfg.useMutualAuth);
        sslContextFactory.setIncludeProtocols("TLSv1.2", "TLSv1.3");
        // cipher suites that are not secure are properly removed by default constructor.
        if (tlsCfg.useMutualAuth) {
            sslContextFactory.setTrustStorePath(tlsCfg.tlsTruststoreLocation);
            sslContextFactory.setTrustStorePassword(tlsCfg.tlsTruststorePassword);
        }

        JettyHttpContainerFactory.createServer(getSecureBaseURI(port), sslContextFactory, rc);

Наше приложение имеет ресурс состояния, который выглядит следующим образом:

    @Path("status")
    public class StatusResource {


        @Autowired(required = false) // optional dependencies are not supported by @Inject
        public StatusResource(Supplier<List<Status>> subStatusesSupplier) {
            this.subStatusesSupplier = subStatusesSupplier;
        }

        @GET
        @Produces(MediaType.APPLICATION_JSON)
        public Status status() {
            ...
            return status;
        }
    }

Для нашей операционной группы было бы очень полезно, если бы для этой конечной точки ( и только для этой конечной точки ) не требовались MutalAuthentication и Tls-Settings.

Есть ли возможность исключить одну конечную точкуиз всей SslContextFactory?

1 Ответ

0 голосов
/ 26 октября 2019

Невозможно.

TLS / SSL происходит задолго до того, как запрос сделан.

Запрос содержит URI для конечной точки, для которой вы хотите ограничить взаимную аутентификацию.

Единственный способ добиться этого - использовать два соединителя сервера, каждый со своим собственным SslContextFactory, один с взаимной аутентификацией, другой без.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...