2016-08-05 74 views
0

Ich habe mehrere samples/tutorials über die Token OAuth 2.0, OWIN und JWT (JSON Web Token) durchsucht, um den Zugriff auf eine ASP.NET Web API v2 zu authentifizieren und zu autorisieren. Eines der Dinge, die ich an JWT-Token mag, ist, dass die Rollen, denen der Benutzer angehört, direkt im Token enthalten sind. Auf der Grundlage der den Benutzer zugeordneten Rollen, die das Token trägt ich zulassen/verweigern den Zugriff auf eine API-Methode als solche ..Enthalten OAuth-Zugriffstoken Rollen wie JWT-Token

public class TestsController : ApiController 
{ 
    [Authorize(Roles = "Admin")] 
    [HttpGet] 
    [Route("getdatetime")] 
    public IHttpActionResult GetDateTime() 
    { 
     return Ok(String.Format("The current Date/Time is {0}", DateTime.Now)); 
    } 
} 

Der Grund, warum ich bin auf der Suche OAuth-Token ist, ich kann nicht ein finden Beispiel, das zeigt, wie man JWT Refresh-Token implementiert. Ich habe ein paar examples davon, wie OAuth Refresh-Token zu implementieren und möglicherweise müssen diese Route gehen. In diesem Fall habe ich mich gefragt, ob OAuth-Tokens auch role Informationen wie JWT-Tokens enthalten können.

Antwort

0

Ich nehme an, Sie meinten Zugriffstoken als Oauth-Token, so OAuth2.0 Spec von selbst erzwingt kein Format für die Zugriffstoken, so dass Sie jedes beliebige Format verwenden können, sei es zufällig eindeutige Zeichenfolge oder JSON-Zeichenfolge.

So können Sie JWT Token sehr gut als OAuth Access Token verwenden und notwendige Ansprüche (Rollen) festlegen, wenn Sie sie ausgeben.

Hoffe, dass hilft!