2017-10-02 13 views
0

.NET Core 2.0でJWTトークン認証を実装する際に問題が発生しています。私が読んだ多くのブログ記事はオンラインですが、.NET Core 1.xのように時代遅れです。.NET Core 2.0でJWT認証をどのように実装しますか?

また、トークンを生成して発行する方法に関するドキュメントを見つけることも難しいと感じました。 .NET Framework Web APIでは、これはフレームワークコードですべて「魔法のように」処理されました。

私は、カスタムIDエンティティとカスタムストアの実装とAngularフロントエンドでAPIを構築しています。

私は'/token'エンドポイントとAPIでトークンを生成して、トークンがHTTP要求にAuthorizaton: Bearer {token}ヘッダー経由で渡されたときに要求を認証し、承認する方法を探していますか? Startup.csで

答えて

0

- > ConfigureServices、あなたの設定で更新し、次のように追加します。

services.AddAuthentication(o => 
{ 
o.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; 
o.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; 
}).AddJwtBearer(options => 
{ 
options.Audience = "your audience"; 
options.ClaimsIssuer = "claims issuer"; 
options.TokenValidationParameters = new TokenValidationParameters 
{ 
ValidIssuer = "claims issuer", 
IssuerSigningKey = { your signing key } 
}; 
}); 

次のアップ、設定中:

app.UseAuthentication(); 
app.UseMvc(); 

をあなたはUseAuthenticationがあることを確認する必要があります使用する前にUseMvcを使用してください。

基本的には設定方法では、以前にいたすべてのものが、今[サービス]セクションに移動されました:)

例えば、このブログ記事をチェックしてください、だけでなく、あなたが例を得ることができますレポへのリンクプロジェクト:Shawn Wildermuth's Blog

関連する問題