2017-09-24 7 views
0

私はすべての要求を必要とAsp.Netコア2.0 WEBAPIは、認証されていると、それはこのようにJWTトークンの検証を使用しています。複数のAzure Active Directory(ClientIds)に対してJWTトークンを検証する方法は?

services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) .AddJwtBearer(options => { options.Authority = this._configuration.GetValue<string>("Authority"); options.Audience = this._configuration.GetValue("ClientId"); }); ... app.UseAuthentication();

私は、2つのクライアントアプリケーションがあります。Angular4 WebアプリケーションとWeb APIを。

3つのアプリケーションにそれぞれ独自のAAD App Registration =がありますが、それぞれ異なるClientIDがありますが、すべてが同じテナント(Authority)にあります。

Web Apiアプリケーションを設定することは可能ですか?複数のAAD(トークンは3つの異なるAAD = 3つの異なるClientIDによって生成できます)に対してトークンを検証しますか?

は私が「client_credentials」フローを使用して、クライアント上でトークンを生成し、API呼び出しを行うために、そのトークンを使用することができます知っているが、私はそうトークンリフレッシュなどに対処しなければならない任意のより簡単があれば、私は、不思議方法。

ありがとうございました。

答えて

0

異なるクライアントIDに注意する必要はありません。どのクライアントであっても、AADで保護されたウェブAPIを呼び出すためのアクセストークンを取得すると、アクセストークンのaudienceクレームは同じである必要があります:APIアプリに登録したアプリID URI。 API側では、アクセストークンのオーディエンスクレームがウェブAPIのアプリID URIと一致することを検証する必要があります。アクセス要求を送信したクライアントは気にしません。

関連する問題