Как удалить файл cookie после удаления авторизации Swagger?

#java #spring-boot #swagger

Вопрос:

Я настроил свой swagger на использование простой аутентификации HTTP для аутентификации каждого вызова конечной точки.

Конфигурация, которую я использовал, выглядит следующим образом:

 private Docket docket () {
    return new Docket(SWAGGER_2)
       ....
       .build()
       .securitySchemes(securitySchemes())
       .securityContexts(securityContexts())
       ....
}

private List<SecurityScheme> securitySchemes() {
    return ImmutableList.of(new BasicAuth("Authorization"));
}

private List<SecurityContext> securityContexts() {
    SecurityContext securityContext = SecurityContext.builder()
            .securityReferences(defaultAuth())
            .operationSelector(operationContext -> true)
            .build();
    return ImmutableList.of(securityContext);
}

private List<SecurityReference> defaultAuth() {
    AuthorizationScope authorizationScope = new AuthorizationScope("basicAuth", "HTTP Basic Authentication");
    AuthorizationScope[] authorizationScopes = new AuthorizationScope[]{authorizationScope};
    SecurityReference securityReference = new SecurityReference("Authorization", authorizationScopes);
    return ImmutableList.of(securityReference);
}
 

Пользовательский интерфейс Swagger позволяет мне вводить имя пользователя и пароль для аутентификации каждого вызова API.

Однако после того, как я войду в систему, сделаю успешный запрос и выйду из системы, Swagger все равно сможет совершать звонки, используя мои учетные данные. Это связано с тем, что в браузере все еще существует файл cookie, который можно использовать для аутентификации в конечной точке.

Как я могу настроить Swagger для удаления файлов cookie при выходе из системы?