0

ASP.netコアアプリケーションでMicrosoftアカウント認証を設定しようとしています。
私はかなり後でben day's post私は最後に到達することができないと期待した。
ユーザーが電子メールアドレスを入力するステップにリダイレクトされると、代わりに私のasp.netアプリケーションのアクセス拒否ページにリダイレクトされます。Asp.netコアとMicrosoftアカウント認証アクセスが拒否されました

Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationMiddleware:情報:AuthenticationScheme:私は、次のエラーmesssagesを見ることができますコンソールで
。Identity.Externalは Microsoft.AspNetCore.Hosting.Internal.WebHostに署名しました。情報:要求が1260.8977msで終了しました。302 Microsoft.AspNetCore.Hosting.Internal.WebHost:情報:HTTP/1.1を開始する要求。http://localhost:44394/
Microsoft.AspNetCore.Authorization.DefaultAuthorizationService:情報:ユーザーの承認に失敗しました:。 Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker:警告:フィルタ 'Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter'の要求で承認が失敗しました。 Microsoft.AspNetCore.Mvc.ChallengeResult:情報:認証スキームを使用してChallengeResultを実行中です()。 Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationMiddleware:情報:AuthenticationScheme:Identity.Externalが正常に認証されました。 Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationMiddleware:情報:AuthenticationScheme:Identity.Externalは禁止されていました。 Microsoft.AspNetCore.Authentication.MicrosoftAccount.MicrosoftAccountMiddleware:情報:AuthenticationScheme:Microsoftは禁止されていました。ここで

私の現在の設定(非常にシンプルな)

app.UseIdentity()です。 app.UseMicrosoftAccountAuthentication(新しいMicrosoftAccountOptions { のDisplayName = "マイクロソフトアカウント"、 ClientIdを= "私のID"、 ClientSecret = "私の秘密"、 AutomaticChallenge =真 });

なぜアクセスが拒否されるのですか?

答えて

1

私は、Microsoftアカウントで認証されたAsp.NetコアWebアプリケーションを構築しようとしており、うまく動作します。これは、クッキーとMicrosoftアカウントのコンポーネントを使用し、ここにあなたの参照のためのコードです:

app.UseCookieAuthentication(new CookieAuthenticationOptions()); 

app.UseMicrosoftAccountAuthentication(new MicrosoftAccountOptions { 
      DisplayName = "Microsoft Account", 
      ClientId = "", 
      ClientSecret = "", 
      AutomaticChallenge = true, 
      SignInScheme= "Cookies" 
}); 

public async Task Login() 
{ 

    await HttpContext.Authentication.ChallengeAsync(new AuthenticationProperties() { RedirectUri = "/" }); 
} 

そして、あなたはhereから完全なコードサンプルを参照することができます。このコードサンプルを実行するには、最初にhereのアプリを登録し、Webプラットフォームを追加し、リダイレクトURL http://localhost:7507/signin-microsoftを設定する必要があります。

元の問題では、もうAsp.net 5テンプレートがないため、この問題の再現に役立つデモプロジェクトを提供できる場合は役立ちます。

+0

ありがとう、チャームのように動作し、私はCookie認証で試していましたが、より多くのオプションがあり、私はアカウントコントローラを持っていませんでした。だから私はどちらか一方が欠けていると思います。 – baywet

関連する問題