0

これは asp.net 固有のものではありません。これらのアプリの一部は WinForms であり、将来的には Wpf やおそらくいくつかの Silverlight アプリも追加される予定です。

ここで開発している新しいアプリに、ロールとパーミッション ベースのアクセス セキュリティを組み込む必要があります。

一般に .net RoleProvider、特に SqlRoleProvider には必要なものがすべて揃っているように見えますが、aspnet_regsql が必要とする Db スキーマの変更についていくつか懸念があります。

これらについてグーグルで検索してみましたが、何を尋ねたらよいかわかりません。

すなわち

  1. これを .net バージョン間でアップグレードするのは、どのくらい簡単でしょうか (またはそうではないでしょうか)。
  2. .Net 2.0 と .net 3.5 のアプリは同じスキーマを問題なく使用できますか? つまり、.net 2.0 と 3.5 のアプリで同じデータベース内の同じアクセス許可を使用できますか?
  3. Sql Security プロバイダーはどれくらい安定していますか? 怒って使用している人はいますか? それらは使用する価値がありますか?

弾丸を噛んで、独自の限定された役割機能 (必要なすべてを実行します) と独自のカスタム RoleProvider を実装するほうがよいでしょうか?

ご覧のとおり、私は「車輪の再発明をしたくない」と「未知のサードパーティ コードの問題に悩まされていない」という板挟みになっています (とにかく私にはわからないので、質問しています)。

事前にアドバイスと証言をありがとう、

帯域幅

4

2 に答える 2

3

私は何年もの間(さまざまなプロジェクトで)組み込みのプロバイダーを問題なく使用してきました。2.0 で公開されて以来、何も変わっていません。

SQL プロバイダーが必要なすべてを行う場合は、それを使用してください。追加の機能が必要でない限り、独自のものをロールアウトする理由はほとんどありません。

注目すべき点の 1 つは、プロファイル、メンバーシップ、およびロールに適用されることですが、sproc の効率性です。sproc を見ると、実行のたびにさまざまなテーブルからデータを取得するアクティビティがあることがわかります。たとえば、ほとんどすべてのクエリ (私が見たことを覚えています) は、現在のリクエストの appid のクエリです。DB で実行しているアプリが 1 つしかない場合、それはやり過ぎで変更できる可能性があります。Omar Al Zabir によるこの記事 (The Code Project) では、プロファイルの改善について説明しています。

于 2009-01-08T15:41:30.537 に答える
1

SqlRoleProvider が最適だと思います。スケーラビリティが高く、セットアップも簡単です。独自の実証済みのソリューションを既に展開していない限り (なぜこの質問を投稿するのですか)、これは簡単です。

私は webchanix に同意します。システムは複数のアプリケーションを許可し、多くのテーブル スキャンを実行しますが、最終的には、その利点に基づいてかなり小さなパフォーマンス ヒットについて話していると思います。

于 2009-01-10T19:35:18.093 に答える