Как проверить JWT токены на Фронтенде Angular?

Подскажите пожалуйста! У меня учебный проект. Есть Frontend на Angular 17 и Backend на Django Rest Framework. Пользователь должен иметь возможность авторизоваться через сторонний API (как авторизация через Google). В моем коде - когда пользователь на Fronend нажимает копку "авторизоваться через API", я перенаправляю его на Backend, затем на сторонний сервис, он там авторизовывается и на backend приходит ответ от стороннего сервиса что все ОК. Тогда на Backend я создаю 2 JWT токена и отправляю их в query string GET запросом на Frontend. Frontend ловит этот запрос и авторизовывает пользователя, но он НЕ ПРОВЕРЯЕТ токены, что они выписаны backend'ом и что они корректные, а только сохраняет их в браузере пользователя. То есть если я делаю такой же запрос прямо из строки браузера но с фальшивым секретом в токене, то пользователь все равно авторизовывается! Вопрос - как это исправить? Как проверять токены на то что они действительно не поддельные?

Уточнение: Я делаю редирект на фронтэнд frontend_url = f'localhost:4200/auth-success?refresh={refresh}&access={access_token}' return redirect(frontend_url)'

А фронтэнд ловит этот редирект { path: 'auth-success', component: OAuthCallbackComponent },

и обрабатывает:

@Component({
  selector: 'app-oauth-callback',
  template: '<p>Intra authentication in process.</p>'
})
export class OAuthCallbackComponent implements OnInit {
  constructor(
    private route: ActivatedRoute,
    private router: Router
  ) {}
  ngOnInit() {
    this.route.queryParams.subscribe(params => {
      const refreshToken = params['refresh'];
      const accessToken = params['access'];     
      localStorage.setItem('refresh_token', refreshToken);
      localStorage.setItem('access_token', accessToken);
      //alert('Authentication successful!');
      this.router.navigate(['/home']);
    });
  }
}

но не проверяет токены, а только сохраняет их. Вопрос - как их проверить?


Ответы (0 шт):