/ / Uwierzytelnij wszystkie żądania interfejsu API REST bez nazwy użytkownika / hasła, aby uzyskać dowolny token - angularjs, node.js, rest, api, uwierzytelnianie

Uwierzytelnij wszystkie żądania dla REST API bez nazwy użytkownika / hasła, aby uzyskać dowolny token - angularjs, node.js, rest, api, authentication

Sprzedaję produkty, API pobierz produkt zWęzeł zaplecza i pokaż na kątowym interfejsie, Back-end jest scentralizowany, a kątowy interfejs jest w wielu domenach, muszę uwierzytelnić wszystkie żądania złożone z mojego kątowego interfejsu do węzła. Użytkownicy nie mają konta. Muszę się upewnić, że nikt inny nie kopiuje danych produktu za pośrednictwem POSTMAN lub innych usług. JWT nie działa, ponieważ żądanie jest widoczne, więc token można skopiować, aby uwierzytelnianie nie działało. Potrzebuję tylko mojego interfejsu kątowego, który może wykonać żądanie i mogę zweryfikować pochodzenie żądania. Czy ktoś może mi zasugerować, co powinienem wypróbować? Każda pomoc będzie mile widziana. Z góry dziękuję.

Odpowiedzi:

0 dla odpowiedzi № 1

Może coś takiego jak sprawdzenie adresu IP pochodzącego? Powinieneś być w stanie uzyskać adres IP w zapleczu Node Express za pomocą czegoś takiego

if (req.ip == 127.0.0.1) // whatever IP your angular app is hosted at

0 dla odpowiedzi nr 2

Możesz spróbować umieścić na białej liście domen frontonu według właściwości CORS lub użyć oprogramowania pośredniego, aby sprawdzić adres URL żądania.

Przykład oprogramowania pośredniego

var whitelistedURL = ["abc.com","abc.xyz"]
function(req, res, next){
if(whitelistedURL.indexOf(req.originalUrl)==-1){
res.send({
status: "Unauthorised"
})
}else{
next()
}
}