ASP.NETアイデンティティ3.0のCore 5、私はWebページとapisの両方を使用しています。 OpenIddictを使用してJWTトークンを発行し、認証しています。JWTトークンで承認
X509Certificate2 c = new X509Certificate2(@"tokensign.p12", "MyCertificatePassword");
services.AddOpenIddict<WebUser, IdentityRole<int>, WebDbContext, int>()
.EnableTokenEndpoint("/api/customauth/login")
.AllowPasswordFlow()
.UseJsonWebTokens()
.AddSigningCertificate(c);
私はUseJsonWebTokens()を無効にすると、トークンを生成して正常に認証できます。ただし、証明書が返されたトークンを検証しているかどうかはわかりません。
UseJsonWebTokensを有効にすると、このエンドポイントでJWTトークンを発行できます。しかし、私はどんな要求も認証できません!
私は、アプリの設定で、次のコードを使用しています:
app.UseJwtBearerAuthentication(new JwtBearerOptions
{
AutomaticAuthenticate = true,
AutomaticChallenge = true,
RequireHttpsMetadata = false,
Authority = "http://localhost:60000/",
Audience = "http://localhost:60000/",
});
app.UseOAuthValidation();
app.UseIdentity();
app.UseOpenIddict();
app.UseMvcWithDefaultRoute();
- どのように私はJWTトークンが改ざんされていないことを確認するために私の証明書を使用して検証するための要求を強制することができます。
- JWTトークンの検証と認可を許可する正しい設定は何ですか?私がJWTを使用していない場合、私は正常に認証されています。
質問タイトルにタグを入れないでください! http://stackoverflow.com/help/tagging – Tseng