Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4 5   вперед  Ctrl      все
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79,
У тебя никого нет с кем решать.
Жалуются на петро бездельники. Профи никогда.
Фильтр не сделал.
Демку тоже.
Бездельник.
10 ноя 20, 11:42    [22229407]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5596
Zzz79
mad_nazgul
пропущено...


Учитесь не думать!
<:o)

не все так просто - у нас basic auth


Опять. Зачем вы думаете?
Если basic auth, то думать не надо.
Надо использовать basic auth.
Хотя бы почитайте как передает логин/пароль basic auth. ;-)
Там ничего сложного.
10 ноя 20, 12:19    [22229435]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5596
Zzz79
Короче там все сложно у нас,фронт и бек это два разных приложения,крутятся на разных портах.
Сооттвественно если пользователь работает на сайте - то все запросы сначала попадают на фронт,там они преобразуются и попадают на бек ,при этом туда вкладывается csrf token
собственно поэтому я и не могу послать авторизованный запрос сразу на бек ,так как токен будет уже протухший

вообщем наверно надо отключать для /api/** секурити ,давать юзерам токен какой то и по нему отдавать данные


Вот поэтому смотрим либо в сторону OAuth2, либо SAML.

Для начала попробуйте через OAuth2.
10 ноя 20, 12:23    [22229443]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
mad_nazgul
Zzz79
пропущено...

не все так просто - у нас basic auth


Опять. Зачем вы думаете?
Если basic auth, то думать не надо.
Надо использовать basic auth.
Хотя бы почитайте как передает логин/пароль basic auth. ;-)
Там ничего сложного.

+1
curl -user тутИмяПароль
Лень ему
10 ноя 20, 12:33    [22229448]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
mad_nazgul
Вот поэтому смотрим либо в сторону OAuth2, либо SAML.

Для начала попробуйте через OAuth2.
а все вместе это SSO
10 ноя 20, 12:34    [22229449]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
mayton
Member

Откуда: loopback
Сообщений: 49763
Zzz79

Соотвественно в чем проблема
старый сервис отдавал данные при запросах если в хедер мы записывали x-api-key: TXK5u7G6XdsUCh8PkEIL
этот токен генерится в монго и соотвественно прикручивается к группе пользователей
в итооге чтобы получить данные от старого сервиса я вбиваю в постман запрос с хедером в качестве этого ключа

Знания про x-api-key здесь - неполные. Кажется что тебе просто недоговаривают или не рассказали
про архитектуру в целом. Скорее всего система работает на каком-то стандартном протоколе безопасности.
Тебе надо просто понять на каком. Раньше были LDAP/Microsoft AD. Сейчас OAuth.

И если ты будешь знать название этого протокола - тогда найдешь под Spring ему соотвествующий
переходник.
10 ноя 20, 12:35    [22229450]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
Zzz79
Member

Откуда:
Сообщений: 1005
Вообщем моя мысль такая -поставить в конфигурации спринг секурити фильтр - который будет фильтровать по хедеру

что то типо вот такого
@Configuration
@EnableWebMvcSecurity
@EnableGlobalMethodSecurity(securedEnabled = true)
public class SecurityConfigDemo extends WebSecurityConfigurerAdapter {
    
    @Autowired
    private DemoAuthenticationProvider demoAuthenticationProvider;
    
    @Override
    protected void configure(HttpSecurity http) throws Exception {        
                
        http
        .authorizeRequests()
            .antMatcher("/user")
                .addFilterBefore(new DemoAuthenticationFilter(), BasicAuthenticationFilter.class)                
        ;
                        
    }
    
    @Override
    public void configure(AuthenticationManagerBuilder auth) throws Exception {        
        auth.authenticationProvider(demoAuthenticationProvider);        
    }    
    
и сам фильтр
}

public class DemoAuthenticationFilter extends OncePerRequestFilter {

    @Override
    protected void doFilterInternal(HttpServletRequest request,
            HttpServletResponse response, FilterChain filterChain)
            throws ServletException, IOException {
        
        String xAuth = request.getHeader("X-Authorization");
        
        // validate the value in xAuth
        if(isValid(xAuth) == false){
            throw new SecurityException();
        }                            
        
        // The token is 'valid' so magically get a user id from it
        Long id = getUserIdFromToken(xAuth);
        
        // Create our Authentication and let Spring know about it
        Authentication auth = new DemoAuthenticationToken(id);
        SecurityContextHolder.getContext().setAuthentication(auth);            
        
        filterChain.doFilter(request, response);
    }

}


но у нас в спринг конфиге фильтры другие какие то например вот такой
 @Bean
  protected Filter corsFilter() {
    var config = new CorsConfiguration();
    config.setAllowCredentials(true);
    config.setAllowedOrigins(allowedOrigins);
    config.setAllowedMethods(getCorsAllowedMethods());
    config.addAllowedHeader("*");

    var source = new UrlBasedCorsConfigurationSource();
    source.registerCorsConfiguration("/**", config);
    return new CorsFilter(source);
  }
10 ноя 20, 12:38    [22229455]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
mayton,
Он выше. Сказал что ПЕРЕПИСЫВАЕТ старый сервис на новый.
С чем тогда протокол взаимодействует?
Нет ответа.
10 ноя 20, 12:39    [22229456]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79
extends WebSecurityConfigurerAdapter
родил наконец конфиг
10 ноя 20, 12:40    [22229458]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
Zzz79
Member

Откуда:
Сообщений: 1005
PetroNotC Sharp
mad_nazgul
пропущено...


Опять. Зачем вы думаете?
Если basic auth, то думать не надо.
Надо использовать basic auth.
Хотя бы почитайте как передает логин/пароль basic auth. ;-)
Там ничего сложного.

+1
curl -user тутИмяПароль
Лень ему

не работает так я уже пробовал- я же тебе выше сказал у нас этот говно токен scrf ,который фронт генерит при каждом запросе и отдает на бек
тобишь прямое обращение к беку в данной ситуации невозможно
10 ноя 20, 12:41    [22229459]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79
не работает так я уже пробовал
код дай бездельник. Что не работает!
10 ноя 20, 12:43    [22229460]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79
выше сказал у нас этот говно токен scrf ,
ты на этой фразе выше пошел на личности вместо уточнений КТО И ЗАЧЕМ ДЕЛАЕТ ТОКЕНЫ
10 ноя 20, 12:44    [22229461]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79
фронт генерит при каждом запросе
при либе Spring Security это делает поставщик токенов на https и дальше идем с токеном на любые рест ресурсы уже без буквы s
Нужно ли клиенту заморачиваться на это?
10 ноя 20, 12:48    [22229465]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
mayton,
Я представил как 200 разных клиентов генерят токены)))))
10 ноя 20, 12:50    [22229468]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79,
Короче, строку zzz79:123 кодируй в base64 клиентами и отправляй в хидере.
Не надо токенов.
Это сложно для тебя.
10 ноя 20, 12:52    [22229472]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
Zzz79
Member

Откуда:
Сообщений: 1005
mad_nazgul
Zzz79
пропущено...

не все так просто - у нас basic auth


Опять. Зачем вы думаете?
Если basic auth, то думать не надо.
Надо использовать basic auth.
Хотя бы почитайте как передает логин/пароль basic auth. ;-)
Там ничего сложного.

он передается как некий токен в хедере- но я пробовал в постмане basic auth и меня не пропустило

по большому счету мне нужен некий фильтр который будет брать неавторизованые реквесты и чекать некий токен ,который будет в хедере - если он есть и похож на то что в бд- значит отдаем юзеру что он просил,нет отдаем ошибку неверный токен
10 ноя 20, 12:53    [22229475]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79
постмане basic auth и меня не пропустило
а curl пропу тило?
LOL
10 ноя 20, 12:55    [22229479]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79
по большому счету мне нужен некий фильтр который будет брать неавторизованые реквесты и чекать некий токен ,который будет в хедере - если он есть и похож на то что в бд- значит отдаем юзеру что он просил,нет отдаем ошибку неверный токен
то что тебе надо ВЫБРАТЬ СТАНДАРТ
- базовая
- form
- digest
- JWT
Тебе не доходит.
ОК

Сообщение было отредактировано: 10 ноя 20, 12:58
10 ноя 20, 13:02    [22229491]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
Zzz79
Member

Откуда:
Сообщений: 1005
PetroNotC Sharp
mayton,
Он выше. Сказал что ПЕРЕПИСЫВАЕТ старый сервис на новый.
С чем тогда протокол взаимодействует?
Нет ответа.

СЕРВИС взаимодействует сам с собой)
Что тут непонятного то?был старый сервис - сейчас пишем новый)
старый отдавал данные по апи без авторизации а только при наличии x-api-key в хедерах,который выдавался каждому юзеру индивидуально администратором приложения.Генерился он в монгоДБ насколько я понял- но это не суть

моя задача сделать тоже самое
выдать юзеру по токену( что будет токеном - скорей всего uuid пользователя из бд)

сейчас проблема в том что я хочу повторить тоже самое ,но упираюсь в спринг секурити - так как на любой запрос генерится токен ( о котором петро даже не вкурсе) и без него ты будешь получать 401 ,если пойдешь не через сайт ,а сразу на бек- а апи мы отдаем именно напрямую через бек

есть простая идея тупо включить пермит all для урла апи- но тогда любой сможет сташить данные- нужна либо авторизация ,либо как было в старом сервисе обычный ключ - я так понимаю это можно сделать фильтром ,правда как это сделать в контексте нашего приложения не очень понятно
10 ноя 20, 13:05    [22229495]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
Zzz79
Member

Откуда:
Сообщений: 1005
PetroNotC Sharp
Zzz79
постмане basic auth и меня не пропустило
а curl пропу тило?
LOL

нет же ,ты чем слушаешь то?
ни курл ни постман - не работают! 401 всегда
10 ноя 20, 13:06    [22229497]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
Zzz79
Member

Откуда:
Сообщений: 1005
PetroNotC Sharp
Zzz79
по большому счету мне нужен некий фильтр который будет брать неавторизованые реквесты и чекать некий токен ,который будет в хедере - если он есть и похож на то что в бд- значит отдаем юзеру что он просил,нет отдаем ошибку неверный токен
то что тебе надо ВЫБРАТЬ СТАНДАРТ
- базовая
- form
- digest
- JWT
Тебе не доходит.
ОК

у нас уже все выбрано - ты меня не слышишь видимо
менять мне там никто ничего не даст,все настроено и работает,а моя задача прикрутить к этому апи
10 ноя 20, 13:09    [22229502]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
mayton
Member

Откуда: loopback
Сообщений: 49763
Zzz79

сейчас проблема в том что я хочу повторить тоже самое ,но упираюсь в спринг секурити - так как на любой запрос генерится токен ( о котором петро даже не вкурсе) и без него ты будешь получать 401 ,если пойдешь не через сайт ,а сразу на бек- а апи мы отдаем именно напрямую через бек

Не совсем так. Токен генерируется по требованию как билет на поезд. Купил билет. В нем
указано на кого. И что он разрешает. И какое время действия. Например 24 часа. Что-то
типа сеансового токена. По истечении времени токена - ты по событию снова обращашся
к серверу токенов и просишь новый.

И дальше ты ходишь с этим токеном и всем предъявляешь. Но для полноценной (100%)
правильной реализации этого стека нужно минимум 3 участника.

1-клиент
2-сервер
3-сервер токенов

Если количество участников искусственно сократить то тогда смысл этой безопасности теряется.
10 ноя 20, 13:09    [22229505]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79,
Пример для базовой готов?
Давай сюда.
Без всяких твоих токенов.
10 ноя 20, 13:10    [22229506]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Zzz79
менять мне там никто ничего не даст
первый раз ты это написал.
У меня отличная память
10 ноя 20, 13:12    [22229508]     Ответить | Цитировать Сообщить модератору
 Re: Api vs Spring Security  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
mayton,
+1
У меня нет терпения ему разжевывать
10 ноя 20, 13:13    [22229509]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4 5   вперед  Ctrl      все
Все форумы / Java Ответить