簡體   English   中英

OWIN Cookie驗證

[英]OWIN Cookie Authentication

我似乎無法讓OWIN與基於Cookie的身份驗證一起使用。 我在啟動中將我的OWIN令牌端點配置為:

OAuthOptions = new OAuthAuthorizationServerOptions
{
   TokenEndpointPath = new PathString("/Token"),
   Provider = new ApplicationOAuthProvider(PublicClientId),
   AccessTokenExpireTimeSpan = TimeSpan.FromDays(14),
   AllowInsecureHttp = true
};
app.UseOAuthBearerTokens(OAuthOptions);

我還配置了Cookie身份驗證:

app.UseCookieAuthentication(new CookieAuthenticationOptions());

現在,當我點擊/token端點時,我得到了承載令牌作為響應,並且還在客戶端使用令牌設置了cookie。

接下來,我有一個裝飾有Authorize Attribute的控制器。 當我嘗試訪問任何方法時,即使cookie與請求一起發送,我也會收到401未經授權的響應。 看來OWIN沒有遵守Cookie進行身份驗證。

我是否在這里缺少某些東西,可能是某種類型的配置? 如果我設置帶有承載令牌的Authorization標頭,那么所有這些工作都很好,但是為什么它不只適用於cookie?

如果有人遇到相同的問題,則在WebApi Config中,以下行將忽略cookie,並查看Bearer令牌。

config.SuppressDefaultHostAuthentication();

注釋掉它使基於cookie的身份驗證工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM