問題タブ [asp.net-roles]

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 に答える
2103 参照

c# - カスタム ロール プロバイダーのキャッシュのトラブルシューティング

ロールまたはユーザー名を取得するために内部で Web サービス メソッドを使用するカスタム ロール プロバイダーを作成しました。このプロバイダーはSystem.Web.Security.RoleProviderから継承します。web.configファイルで、Cookie を使用する .NET 提供のキャッシュ機能を有効にしました。

このプロバイダーのweb.configセクションは次のようになります。

ここで、キャッシュが機能しているかどうかをテストします。次のような簡単な方法を書きました。

このコードを (テスト Web サイトから) デバッグしている間、メソッドの誘導が冗長であるかどうかに関係なく、デバッガーはプロバイダーに示されている各メソッドを入力し、内部のすべてのロジックを実行します。各メソッドの 2 番目の呼び出しは、キャッシュからプロバイダーに直接要求せずに結果が返されるため、実行されるべきではないと考えました。

私がしていること/考えが間違っていること、およびキャッシュ機能を修正する方法は?

よろしく

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

asp.net - Webサイト管理ツール-メンバー'StructureMap.StructureMapException'のタイプが解決されていません

私は写真が私に最も役立つと思います:

代替テキスト

何か案は?私のウェブアプリは問題なく動作します。私は実際にはWebサイト管理ツールを使用していません。それを試してみるように教えたところ、セキュリティタブが機能せず、その理由がわかりません。私はStructuremapを利用する自分のメンバーシップとロールプロバイダーを使用しています。これは、Webサイト管理ツールがStructuremap.dllを認識していないようなものです。それを修正する方法がわかりません。

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

asp.net - ASP.net MVC 2 +SS2008開発者のインスタンスと役割

私の仕事のためにいくつかのアドバイスが必要になるでしょう。

私のコンピューターには、MYCOMPUTERという名前のカスタマイズされたインスタンス名でVS2010とSQL Server2008Developerをインストールしました。ASP.NET MVC 2で作成されたプロジェクト作業を転送する必要がある場合は、もちろん、VS2010:sインターフェイスを介して、自分のコンピューターから、SQLServer2008のライトバージョンを備えたVS2010を備えた別のコンピューターにデータベースを作成します。 SQLEXPRESSという名前のインスタンス、それは問題になりますか?

また、VSを介してASP.netで役割を作成した場合、データベースの定義された役割が原因で、SS2008Developerに関連してエラーメッセージや問題が発生する可能性があると聞きました。それは本当ですか?

//Fullmetalboy

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

asp.net-mvc - Asp.net MVC ユーザーがロールを切り替えられるようにする

ユーザーが複数の役割を持つ複雑な Web サイトを開発しています。ユーザーは、DB 内の他の項目にも関連付けられており、ユーザーの役割とともに、Web サイトで何を表示および実行できるかを定義します。

現在、一部のユーザーは複数の役割を持っていますが、Web サイトは複雑な構造のため、一度に 1 つの役割しか処理できません。

ユーザーがログインすると、Web サイトの隅にドロップダウンが表示され、そこで役割の 1 つを選択できるようになります。ロールが 1 つしかない場合、ドロップダウンはありません。

ここで、最後に選択したロールの値を、ユーザーのその他の設定と共に DB に保存します。彼が戻ってきたとき、このように役割はまだ記憶されています。

ドロップダウンの値は、Web サイト全体からアクセスできる必要があります。私は2つのことをしたい:

  1. 現在のロールを に保存しSessionます。
  2. メソッドをオーバーライドするか、元のメソッドのようにすべてのロールではなく、現在選択されているロールへのすべてのアクセスをチェックIsInRoleするメソッドを作成します。IsCurrentlyInRoleIsInRole

セッションの保存部分については、それを行うのが良いと思いましたGlobal.asax

しかし、どうやらこれにより実行時エラーが発生します。Session state is not available in this context.

  1. これを修正するにはどうすればよいですか? また、このコードを配置するのに本当に最適な場所ですか?
  2. 他のすべての機能を失うことなく、ユーザー ( IPrincipal?)を拡張するにはどうすればよいですか?IsCurrentlyInRole
  3. 多分私はこれをすべて間違ってやっています.これを行うためのより良い方法はありますか?

どんな助けでも大歓迎です。

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

asp.net-mvc - カスタム承認属性 (フォローアップ)

このスレッドをフォローアップすると、これが私が思いついたものです...

どのように/なぜ私はこれを思いついたのですか? AuthorizeAttribute ワークフローは次のようになると思います。

  1. まず、AuthorizeCore がトリガーされます。true が返された場合、ユーザーは承認されています。false を返す場合、HandleUnauthorizedRequest がトリガーされます。そうですか?
  2. newプロパティをオーバーライドするにはキーワードを使用する必要があることをどこかで読みました。したがって、これが私が Roles プロパティをオーバーライドした方法です。しかし、オーバーライドするプロパティが最初のプロパティ (基底クラスのもの) とは異なるタイプだった場合、それもそれを隠したり、まったく別のプロパティを作成したりしますか?

それで、あなたはどう思いますか?それは実際に機能するはずですか?UI をセットアップしていないため (デザイナーがデザインを完成させるのを待っているため)、今はテストできません... 実際、TDD の利点を理解するのはこれが初めてです。愚かで役に立たないが、私は間違っていた:)

PS:このスレッドでは、@tvanfosson がコンテキストの CachePolicy を設定しています (私はそう思います)。

前もって感謝します。

0 投票する
3 に答える
972 参照

.net - 認証失敗時のリダイレクト

いくつかのセクションがあります

認証に失敗した場合、指定したページにリダイレクトしたい。そして、これは一般的なページではありません。ユーザーが開きたいページに基づいて、特定のリダイレクトを作成したいと考えています。それはどのように行うことができますか?

前もって感謝します。

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

asp.net-membership - コマンド プロンプトで特定のデータベースにロールとメンバーシップをインストールする

メンバーシップとロールを特定のデータベースにインストールしたいと考えています。新しいデータベースを作成しているようです: aspnetdb. GUI(ウィザード)を使用してみましたが、パーソナライズがインストールされました。「...Localhost/DatabaseName」を追加しようとしましたが、うまくいきませんでした。

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

asp.net-membership - 主キーが aspnet_regsql GUID によって生成されるのはなぜですか?

Visual Studio 2010 で ASP.NET Web サイトを開発しています (Service Pack 1 を使用して、どうもありがとうございました)。SQL Server 2008 で .NET の組み込みのメンバーシップ プロバイダーとロール プロバイダーを利用したいと考えています。

現在、私は非常に長い間 Microsoft テクノロジの開発に携わっており、業界で最も優れた SQL Server DBA の何人かと交流を深めてきました。次のようなデータベース テーブルを作成するときは、主キーとして GUIDS を使用しないようにと、全員が私に言いました。

  1. 非常に高いレコード数を持っています。
  2. 大量の挿入と削除があります。

理由: 主キーがクラスター化インデックスであるためです。

これは基本的に、テーブルに挿入される各レコードがインデックスの制約に従う必要があることを意味します。したがって、インデックスが ASC で並べ替えられている場合、新しく生成された GUID を持つレコードは、適切な順序で問題のデータ テーブルに物理的に押し込まれなければなりません。

これは、数千件程度のレコードしかないテーブルでは問題ありません。SQL Server は、ほんの一握りを再配置するだけで済みます。ただし、データ テーブルに数百万のレコードがあり、行 216 に新しいレコードを挿入する必要があることがわかった場合は、完了するまでにかなりの時間がかかる可能性があります (Web 標準によると)。新しい行を挿入するには、これらすべての行を物理的に下に移動する必要があります。

だから私の質問は単にこれです。Microsoft と、私たちが知っていて愛するすべての DBS は、主キーとしての GUID に NO と言ってきました... ASPNET_REGSQL ツールは、GUID を主キーとして使用してテーブルを作成するのはなぜですか?

または、何か不足していますか?2008 年の SQL プロファイラー エンジンに、GUIDS をタスクと見なさない新機能はありますか?

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

asp.net-mvc - ASP.NET MVC サイトのアイテム固有の権限

ASP.NET MVC で最初のサイトを作成しています。特定のユーザーの特定の項目に基づいて、アクセス権またはロールを設定する方法を知りたいです。

私のサイトにはプロジェクトとユーザーがあり、各ユーザーは 1 つ以上のプロジェクトのメンバーになることができます。プロジェクトのメンバーである各ユーザーは、そのプロジェクトに関連するいくつかの役割に割り当てられます。ただし、各ユーザーには、メンバーであるプロジェクトごとに異なる役割が割り当てられる場合があります。

このようなことを行うために、組み込みのメンバーシップの役割を利用できる方法はありますか? プロジェクトのような特定のアイテムではなく、サイト全体に適用される役割へのユーザーの割り当てを確認したことから。

ProjectId とプロジェクト ロールを 3213ProjectEditor などの 1 つの結合ロールに連結して、ロールを作成することを考えていました。そのため、後で使用User.IsInRole(currentProject.ID+"ProjectEditor")して、ユーザーが currentProject のエディターであるかどうかを判断できます。これは私にはハックのように思えます。

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

asp.net - RoleProviderはASP.NETパイプラインのどこにフックしますか?

私が知っている唯一の場所は、属性RoleProviderを使用するときです。Authorize他にどこでを使用でき、RoleProviderロールを具体的に参照する可能性のある場所以外の場所で呼び出されますか(ログインコントロールが自動的にMembershipProviderを使用する方法と同様に考えています)

別の言い方をすれば、独自の役割管理レイヤーを作成しても、実際のRoleProviderコントラクトを実装しない場合、ASP.NETのどの組み込み機能が失われるのでしょうか。