Как я могу выдать Cook ie для соответствующего клиентского домена в Spring Security? - PullRequest
0 голосов
/ 03 марта 2020

В моем SpringSecurityConfig.java есть следующий bean-компонент:


    @Bean
    public CookieSerializer cookieSerializer() {
        DefaultCookieSerializer serializer = new DefaultCookieSerializer();
        if (null != cookieProperties.getName()) { serializer.setCookieName(cookieProperties.getName()); }
        if (null != cookieProperties.getPath()) { serializer.setCookiePath(cookieProperties.getPath()); }
        if (null != cookieProperties.getHttpOnly()) { serializer.setUseHttpOnlyCookie(cookieProperties.getHttpOnly()); }
        if (null != cookieProperties.getMaxAge()) { serializer.setCookieMaxAge(cookieProperties.getMaxAge()); }
        if (null != cookieProperties.getSecure()) { serializer.setUseSecureCookie(cookieProperties.getSecure()); }
        if (null != cookieProperties.getDomain()) { serializer.setDomainName(cookieProperties.getDomain()); }
        return serializer;
    }

    @Bean
    public CorsCookieCsrfTokenRepository corsCookieCsrfTokenRepository(){
        CorsCookieCsrfTokenRepository repository = new CorsCookieCsrfTokenRepository();
        repository.setCookieHttpOnly(false);
        repository.setHeaderName("X-XSRF-TOKEN");
        repository.setCookiePath(cookieProperties.getPath());
        repository.setCookieDomain(cookieProperties.getDomain());
        repository.setCookieName("XSRF-TOKEN");
        return repository;
    }

Этот весенний сервис представляет собой API-интерфейс RESTful HTTPs, размещенный по адресу https://api.mydomain.com

Иногда у меня есть некоторые другие сервисы, которые нужно пройти аутентификацию, но домен отличается, https://webapp.mydomain.com

Как я могу аутентифицировать веб-приложение в Spring API?

Возможно ли это? Другой способ, о котором я думаю, это использовать прокси nodejs и делать все вызовы API оттуда.

...