15
W moim projekcie ASP.NET Web API używam okaziciela tokena autoryzacji i dodałem kilka własnych roszczeń do niego tak:Pierwsze wartość roszczenia z niestandardowych okaziciela tokena (Web API)
var authType = AuthConfig.OAuthOptions.AuthenticationType;
var identity = new ClaimsIdentity(authType);
identity.AddClaim(new Claim(ClaimTypes.Name, vm.Username));
// custom claim
identity.AddClaim(new Claim("CompanyID", profile.CompanyId.ToString()));
Czy w jaki sposób mogę uzyskać dostęp do tej dodatkowej wartości roszczenia w kontrolerze bez dodatkowej podróży do bazy danych?
Jak mogę ponownie użyć tego w sposób bardziej scentralizowany sposób? Korzystam z warstwy usługi, która wymaga takiej 'customClaimValue'. Wszystkie czynności kontrolera muszą wysłać tę wartość do usługi przed pobraniem/zaksięgowaniem danych. –
Można utworzyć niestandardowy filtr, który działa przed naciśnięciem metody działania. –
Dzięki, nie wiedziałem, że można uzyskać aktualne żądanie w filtrze. Również bardzo miły blog, który tam masz, Taiseer! –