現在、Web API 2、OWIN ミドルウェア、および JWT のテクノロジの組み合わせを使用して、新しいアプリのクレーム ベース認証の概念実証を作成しようとしています。
簡単にするために、Web API 2 プロジェクト テンプレートから始めて、認証を「個々のユーザー アカウント」に変更しました。私が作成したサンプル クライアントは、/Token を呼び出してトークンを取得し、OAuth ベアラー トークンを使用してサンプル エンドポイントを呼び出すことができました。ここまでは順調ですね。次に、次のコードを Startup.Auth.cs に追加して、JwtBearerAuthentication を有効にしてみました。
var jwtOptions = new JwtBearerAuthenticationOptions
{
AllowedAudiences = audiences,
IssuerSecurityTokenProviders = new[] {
new SymmetricKeyIssuerSecurityTokenProvider(issuer, signingKey) }
};
app.UseJwtBearerAuthentication(jwtOptions);
Web API 2 が /Token への呼び出しから JWT を返し始めると予想していましたが、何もしていないようです。私はこれに対して数日間頭を悩ませてきましたが、うまくいきませんでした.Microsoftのドキュメントはあまり公開されていません.
また、私の OAuthAuthorizationServerOptions に以下を追加しようとしました
AuthorizationCodeFormat = new JwtFormat(audience, new SymmetricKeyIssuerSecurityTokenProvider(issuer, signingKey))
また、完全に間違ったことをしようとしている可能性もあります。
どんなアイデアでも大歓迎です。