有沒有辦法在web api項目中讀取/解密不記名令牌?在Web API中解密承載令牌
我的web api還託管着通過websocket從瀏覽器調用的SignalR集線器。 與我的正常api調用不同,我無法在此添加授權標頭。雖然我可以在查詢字符串中發送令牌並在SignalR中心讀取它。
默認情況下,令牌由owin解析爲聲明標識。我需要的是手動執行此操作。我會怎麼做?
OAuthAuthorizationServerOptions serverOptions = new OAuthAuthorizationServerOptions()
{
AllowInsecureHttp = true,
TokenEndpointPath = new PathString("/token"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(Config.TokenLifetime),
Provider = new AuthProvider()
};
// Token Generation
app.UseStageMarker(PipelineStage.Authenticate); // wait for authenticate stage, so we get the windows principle for use with ntlm authentication
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());
app.UseOAuthAuthorizationServer(serverOptions);
您使用OAuthBearerAuthenticationOptions生成令牌的連接? –
一種方法是將身份驗證提供程序存儲在owin啓動類中的靜態變量中,並在您需要從令牌獲取聲明時調用它。 –
@ Nikola.Lukovic:是的 –