モバイルクライアント(アプリケーション)を使用して、ユーザーがGoogleで認証できるようにしました。だから、クライアントはアクセストークンといくつかの情報(名前、電子メールなど)をGoogleから受信します。正常に動作します!ASP.NET Web APIでアクセストークンを検証する
また、モバイルアプリとのコミュニケーションが必要なASP.NET Web APIも作成しました。クライアント側では、トークンをHttpClientに追加します。 client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue( "Bearer"、 "pretty_long_access_token_separated_by_two_dots");
質問1:https://jwt.io/ ヘッダーとペイロードは大丈夫ですが、それは「無効だように思える:私はこのサイトにアクセストークンを「解読」しようとしています(作成してくださいそれは大丈夫です)署名 "(下部に記載)。私はこれについて心配すべきですか?サーバー側では
、私はスタートアップクラスの設定方法にこれを追加しました:
app.UseJwtBearerAuthentication(new JwtBearerAuthenticationOptions
{
AuthenticationMode = AuthenticationMode.Active,
AllowedAudiences = new List<string> {"my_client_id"},
IssuerSecurityTokenProviders = new IIssuerSecurityTokenProvider[]
{
new SymmetricKeyIssuerSecurityTokenProvider(@"https://accounts.google.com/", "my_client_secret")
},
});
私は、私のサーバー側で、トークンを使用してやりたい唯一のことは、作っています私のアプリの検証済みのユーザーだけが自分のAPIコントローラにアクセスできるようにする必要があります。
質問2:UseJwtBearerAuthenticationは正しいですか、間違った方向に向いていますか?
私の問題は、私のWEB APIコントローラにアクセスしようとすると、私は絶えず401を無許可で取得します。
私は正しい軌道に乗っていた場合、私は、サーバー側の設定についての詳細を説明しようとすることができます...
どれheltは非常に高く評価されるだろう!
明確にするために、JWTまたはGoogleを発行していますか? – Ben