Arhn - архитектура программирования

Как развернуть приложение SpringBoot (.war) на AWS Elastic Beanstalk

Я сделал пример приложения Springboot с кодом ниже в application.propertied

server.ssl.enabled=true
server.ssl.key-store=src/main/resources/SpringSecurity.p12
server.ssl.key-store-password=password
server.ssl.key-store-type=PKCS12
server.ssl.key-alias=SpringSecurity

Также ниже два метода находятся в основном классе SpringBoot.

      @Bean
      public ServletWebServerFactory servletContainer() {
        TomcatServletWebServerFactory tomcat =
            new TomcatServletWebServerFactory() {
              @Override
              protected void postProcessContext(Context context) {
                SecurityConstraint securityConstraint = new SecurityConstraint();
                securityConstraint.setUserConstraint("CONFIDENTIAL");
                SecurityCollection collection = new SecurityCollection();
                collection.addPattern("/*");
                securityConstraint.addCollection(collection);
                context.addConstraint(securityConstraint);
              }
            };
        tomcat.addAdditionalTomcatConnectors(redirectConnector());
        return tomcat;
      }

      private Connector redirectConnector() {
        Connector connector = new Connector(TomcatServletWebServerFactory.DEFAULT_PROTOCOL);
        connector.setScheme("http");
        connector.setPort(8080);
        connector.setSecure(false);
        connector.setRedirectPort(8082);
        return connector;
      }

Если я запускаю это приложение в Tomcat, например https://localhost:8082/hello, оно работает как самоподписанное. Если я нажму http://localhost:8082/hello, tomcat покажет неверный запрос, как и ожидалось. На самом деле, он также перенаправляет с 8080 на 8082.

Теперь я экспортирую его как файл .war.

Теперь я создаю приложение в AWS Elastic Beanstalk, загружая вышеуказанный военный файл.

если я запускаю сгенерированный URL: http://SpringSecurity-env.eba-wwpkejwp.us-east-2.elasticbeanstalk.com/hello, он работает, чего я не ожидаю, так как это http.

Мне нужно работать по https. Может ли кто-нибудь предложить мне, что я должен настроить/добавить/удалить в файле AWS/war?


Ответы:


1

Самый простой способ заставить ваше приложение работать через HTTPS:

  • используя среду EB с балансировкой нагрузки с Application Load Balancer,
  • зарегистрировав свой собственный домен, например. на маршруте 53. Ваш домен необходим, так как вы можете регистрировать действительные публичные SSL-сертификаты (не самозаверяющие) только для домена, который вы контролируете.
  • если у вас есть домен, вы можете запросить бесплатный SSL сертификат для него в ACM.
  • затем вы развертываете сертификат SSL на ALB с помощью прослушивателя HTTPS.

Связанные документы AWS:

19.07.2020
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..