5

にすぐにログインした後に主張Asp.net MVC 6のgetユーザーは両方、私は<code>userManager.CreateAsync()</code>を呼び出す前に、カスタムクレームを追加するように、私はすぐに<code>AccountController</code>をカスタマイズしAsp.net MVC 6ウェブサイトでは

を登録するとき今、私は「何コントローラ

ExternalLoginConfirmation()で外部プロバイダ(グーグル/ログインfacebook)とコントローラ

  • Register()方法でローカルアカウント(メール/パスワード)と
    • 、 dが好きなのは、直後ですその主張を取得するには... signInManager.ExternalLoginSignInAsync()

    を呼び出した後ExternalLoginCallback()方法でsignInManager.PasswordSignInAsync()

  • を呼び出した後Login()方法で両方

    • 、ユーザがログインする、理想的にDBを打つことなく、ユーザーを取得します。

      サインインした直後にユーザーを見ると、クレームコレクションは空であることに気付きました。しかし、後続のコントローラアクションでそれを見ると、クレームコレクションにデータが取り込まれ、その中に私のカスタムクレームがあります。

      質問は、サインインコードがCurrentPrincipalをリフレッシュしないと思うのですが、サインイン直後にクレームが入力されないのはなぜですか?またサインイン後に直接チェックする別の場所がありますDBを打つことなくクレームを?

  • +0

    私はあなたが見ているものを再現することができますが、これは設計によるものかもしれません... http://github.com/aspnet/identity/issuesでこの質問を投稿してみてください –

    答えて

    0

    独自のApplicationUserStoreを実装し、必要なユーザー(またはIDエンティティとして使用されているエンティティ)のプロパティを入力することができます。

    関連する問題