在ASP.NETv4我用:ASP.NET V5多SigningCredentials
var signingKey = new HmacSigningCredentials(keyByteArray);
但V5的new JwtSecurityToken()
的最後一個參數是SigningCredentials
,不HmacSigningCredentials
。
所以我嘗試使用:
var signingKey = new System.IdentityModel.Tokens.SigningCredentials();
但是,這給我的錯誤The type SigningCredentials exists in both System.IdentityModel.Tokens and System.IdentityModel
我該如何解決這個問題?
這是我的依賴關係:
"dependencies": {
"EntityFramework.Commands": "7.0.0-beta8",
"EntityFramework.SqlServer": "7.0.0-beta8",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta8",
"Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta8",
"Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta8",
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8",
"Microsoft.AspNet.Mvc": "6.0.0-beta8",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta8",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta8",
"Microsoft.AspNet.Tooling.Razor": "1.0.0-beta8",
"Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta8",
"Microsoft.Framework.Configuration.Json": "1.0.0-beta8",
"Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta8",
"Microsoft.Framework.Logging": "1.0.0-beta8",
"Microsoft.Framework.Logging.Console": "1.0.0-beta8",
"Microsoft.Framework.Logging.Debug": "1.0.0-beta8",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta8",
"Thinktecture.IdentityModel.Core": "1.4.0",
"Microsoft.Owin.Security": "3.0.1",
"System.IdentityModel.Tokens.Jwt": "5.0.0-beta8-209291029",
"Microsoft.AspNet.Identity.Owin": "2.2.1"
},
從我所知道的,衝突是這些相關性之間:
"Microsoft.AspNet.Identity.Owin": "2.2.1"
"Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta8"
如果我刪除的實體框架之一,那麼我失去的東西像public class User : IdentityUser
,如果我刪除了Owin,那麼我會丟失像OAuthAuthorizationServerProvider
這樣的東西。
我似乎被卡住了。