I've been looking for an exact answer but it seems most answers are client call and out of the scope.
Question: I already have an access token access token. How to get a claim using c# code given an access token ONLY?
I think: Below are the same questions but no answers i think fits.
Install-Package Newtonsoft.Json
The access token is just base64 encoded JSON. You can parse the token as follows
string token =
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ";
var parts = token.Split('.');
var decoded = Convert.FromBase64String(parts[1]);
var part = Encoding.UTF8.GetString(decoded);
var jwt = JObject.Parse(part);
var name = jwt["name"].Value<string>();
UPDATE
Most of the time you dont need to parse token as above, Just use a recommended JWT library that does both validation and parsing. e.g.
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());