2017-04-25 13 views
0

私はASP.NET MVCクライアントアプリケーションを開発中です。ユーザーはトークンを返す別のAPIアプリケーションを介して認証され、許可されます。クライアントアプリケーションで使用する認証メカニズム

現在、クライアントアプリケーションがAPIからトークンを受け取った後、トークンをセッションに保存し、アプリ認証のためのフォーム認証Cookieを設定します。

FormsAuthentication.SetAuthCookie(TokenViewModel.Username, rememberMe); 
HttpContext.Current.Session["AuthenticationToken"] = TokenViewModel; 

フォーム認証を使用し続けるか、トークンをセッションに保存するだけですか?またはここでユーザOWINを使用してユーザを認証します。

クライアントアプリは[Authorize]属性を使用します。

答えて

0

[Authorize]属性を使用している場合、デフォルトでAPIはCookieではなくHTTPリクエストのAuthorizationヘッダーのアクセストークンをチェックします。

クッキーを使用する場合は、フォーム認証に進むか、Cookie内のトークンを確認するためにAuthorize属性をカスタマイズします。

トークンをセッションに入れておくと同時に、明示的にライフタイム(トークンの有効期限)を管理する方がよいでしょう。それとは別に、リフレッシュトークンを使用して、現在のトークンが期限切れになる前または後に新しいアクセストークンを取得することができます。

+0

質問はクライアントアプリケーションです。 APIはトークンを使用して認証していますが、クライアントアプリケーションの認証はどのように優れていますか? – Ahmed

+0

クッキーを使う方が良いでしょう。 –