問題タブ [asp.net-identity-3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
790 参照

c# - Asp.Net 5 / Identity 3: IdentityDbContext 実装でのクレームのキャッシュ

リクエストを行ったユーザー以外のユーザーに対して管理コントローラーを介してロールを割り当てたり取り消したりできる方法を探しているときに、Claim として保存されている Guid タグが値に一致するかどうかをチェックするカスタム IAuthorizeFilter を実装しました。 UserClaims の Entity Framework 7 Code First Identity テーブル。

Essentials、それはこのコードです:

を割り当てている行で問題が発生してvar stampFromDbいます。次の方法ではるかに読みやすくなる可能性があります。

ただし、キャッシュされた結果 (User.Identity からの実際のクレームと同じ値) が得られ、これに関するドキュメントは見つかりませんでした。私の最善の推測では、エラーは私の側のどこかにあるということですが、これまでにそのような問題に遭遇したことはありません. Asp.Net 5 と EF7 を使用するのはこれが初めてです。SQL Server 12.0.2000 への既定の接続 (LocalDB) を使用しています。

これは機能ですか? はいの場合、オフにすることはできますか、それともどこかで間違いを犯しましたか?

0 投票する
1 に答える
267 参照

asp.net-core - ショートカット Microsoft 認証

ASP.NET 5 Web アプリケーション テンプレートを使用して、アプリに Microsoft 認証を導入しようとしています。

デフォルトのテンプレートでは、ユーザーはログイン リンクから_LoginPartial.cshtmlログイン ページに移動し、そこで希望の認証プロバイダーを選択します。Microsoft 認証のみを受け入れたいので_LoginPartial.cshtml、ユーザーをログインさせます。

修正しました _LoginPartial.cshtml

<ul class="nav navbar-nav navbar-right"> @*<li><a asp-controller="Account" asp-action="Register">Register</a></li>*@ <li><a asp-controller="Account" asp-action="ExternalLogin">Log in</a></li> </ul>

のプロバイダーパラメーターも変更しましたAccountController ExternalLogin

しかし、私の場合 ExternalLoginは呼び出されず、空白のページ

http://localhost:52711/Account/ExternalLogin返されます。

私は何を間違っていますか?

0 投票する
1 に答える
1702 参照

asp.net-core - 拡張アプリケーション ユーザーの管理

ASP.NET 5 Web アプリケーション テンプレートを使用ApplicationUserし、BusinessName を追加して拡張しました

dbContext の BusinessName プロパティ

BusinessName も ViewModels/Manage/IndexViewModel.cs に追加されました

ManageController Index アクションが呼び出されます

Views/Manage/Index.cshml にも

BusinessName を入力する正しい方法は何ですか?

0 投票する
1 に答える
621 参照

c# - CookieAuthentication による ASP.NET 5 Identity 3.0 のスケーラビリティ

MVC6 で ASP.NET 5 を使用しています。Identity 3.0 を使用していますが、多くの Web サーバーで動作させる方法を知る必要があります。

セッションを別の場所に保存することはできますか? データベース?MVC5 では web.config でそれを行いましたが、MVC6 ではそれに関する情報が見つかりません。

これは Startup.cs の私のコードです

ありがとう!!

0 投票する
0 に答える
483 参照

c# - 既存の DB スキーマの Asp.Net Core カスタム IdentityUser

既存のデータベース (データ付き) を継承しており、Identity 3.0 とその機能を使用したいと考えています。データベースのスキーマを変更できません。私が調査したところ、それは実行可能に思えますが、多くのことをオーバーライドする必要があります。

私の質問は、以下のスキーマを使用できるようにするには、正確に何をオーバーライドする必要があるかということです。UserStores、RoleStores、UserManager など。また、ユーザー スキーマを IdentityUser にマップするにはどうすればよいですか (にIdマップされUserId、にPasswordHashマップされPasswordます)?

DB スキーマは次のようになります。

ここに画像の説明を入力

注意すべき点がいくつかあります。UserId列名の代わりIdに、ユーザーが認証されるためにパスワードに実装する必要がある特定のハッシュ アルゴリズムがあります。

これを実装する方法の例は非常に高く評価されます。

0 投票する
2 に答える
323 参照

asp.net-identity - 有効期限が切れていることを気にせずに _Layout でセッションにアクセスする方法

ASP.NET Core & Identity 3 を使用しています。

ログインすると、現在選択されているユーザーの UI テンプレートを読み取り、ファイルにこのテンプレートに基づいて_Layout.cshmlロードします。css

ユーザーは自分のテーマを変更でき、コントローラーを介してセッション変数に保存します

ロードごとにデータベースにクエリを実行する代わりにcshtml、テンプレートをセッション変数に入れ、テンプレートにLayout.cshtml応じて異なる css をレンダリングします。

セッションの有効期限が切れたらどうなるのだろうと思っています。

  1. _Layout.cshtmlmy is there とにかく値にアクセスしてnullになった場合にそれをキャッチし、新しいページがレンダリングされる前にすぐにdbからロードすることを考慮してください。

  2. 私は Identity 3 を使用しているので、Claims の方がよいオプションでしょうか? 私は前にそれを使用したことがありません。上記の私の例のコードは何でしょうか

  3. 私のシナリオに適した別のオプションはありますか?

0 投票する
6 に答える
17050 参照

asp.net - Identity 3.0 で現在の UserId を取得するには? User.GetUserId が null を返す

リクエストを行ったユーザーのIDを取得する必要があります。以前のバージョンの Identity では、次のようにできました。

しかし、もう手に入らないようです。

次のようなものもあります。

ただし、User.Identity.IsAuthenticated が true で User.Identity.Name が正しく設定されていても、常に null を返します。

何を使用すればよいですか?

編集: 私の認証ロジックは[デフォルトの Visual Studio 2015 テンプレート]に基づいています。ID はこれまであまり変更していません。