我有以下BaseApiController:從這個的WebAPI BaseController - 檢查用戶
public class BaseApiController : ApiController
{
public readonly Current _current { get; private set; }
}
我所有的ApiControllers
繼承。
我需要在我的ApiControllers
中的所有方法中進行驗證,該驗證檢查userId是否通過匹配當前的HttpContext.Current.User.Identity。
[Route("{userId}/cars")]
public HttpResponseMessage GetCars(int userId)
{
if (userId != _current.UserId)
{
return Request.CreateErrorResponse(HttpStatusCode.Forbidden, "Unauthorized");
}
}
反正有這樣做的BaseApiController,讓我能避免對所有收到的userid參數端點這樣做驗證?
驗證實際上應該做什麼?你可以製作一個受保護的方法並調用它。屬性可能很有趣,也可以看一下。 –
該驗證用於檢查管道上的令牌/聲明是否與Api消費者發送的{userId}匹配。 – user3362714
我知道什麼正在驗證,但應執行什麼操作?每次調用這個動作都一樣嗎? –