Ich habe ein JWT-Token und dieses Token enthält die ID meines Benutzers.Ich habe eine Tabelle namens Konten, in der jeder Benutzer so viele Konten haben kann, wie er möchte.
Jedes Konto hat eine Benutzer-ID.
Wie kann ich die GetAllAccountsByUserId(int.) schützen? userId)-Route, um sicherzustellen, dass nur Konten zurückgegeben werden, die dem durch das JWT-Token identifizierten Benutzer gehören?
Ich verwende das Repository-Muster.
Irgendwann werde ich eine Tabelle namens „Ausgaben“ haben, die mit „Konten“ synchronisiert ist, und ich werde das gleiche Problem haben, aber auf untergeordneter Ebene.
Serviceebene:
Code: Select all
public async Task GetAllAccountsByUserId(int userId)
{
var res = await _unitOfWork.AccountRepository.GetAllAccountsByUserId(userId);
var resDTO = _mapper.Map(res);
return resDTO;
}
Code: Select all
public async Task GetAllAccountsByUserId(int UserId )
{
return await _context.Account.Where(res => res.UserId == UserId ).AsNoTracking().ToListAsync();
}