問題タブ [sqlroleprovider]

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 投票する
7 に答える
5080 参照

c# - ほとんどの人は.NETのSqlMembershipProvider、SqlRoleProvider、およびSqlProfileProviderを使用しますか?

メンバーシップ機能を備えたサイトを開発する場合、ほとんどの人は.NETのSqlMembershipProvider、SqlRoleProvider、およびSqlProfileProviderを使用しますか?

それとも、多くの人が独自のプロバイダーを作成しているのでしょうか、それとも完全に独自のメンバーシップシステムを作成しているのでしょうか。

自分でロールするSQLプロバイダーの制限は何ですか?

SQLプロバイダーを拡張して追加機能を提供するのは簡単ですか?

参考までに、
Scott Guのブログでは、MicrosoftがSqlMembershipProviderのソースコードを提供しているため、最初から始めるのではなく、カスタマイズすることができます。参考までに。

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

iis-7 - ASP.NET 3.5 IIS7 ロール セキュリティの実装

ストックMSフォーム認証とSqlRolesProviderを使用して、IIS7(Server '08)で実行されているASP.NET 3.5アプリケーションに取り組んでいます。(私はaspnet_regsqlツールを使用してテーブルを生成しました)。

SysAdmins、AppAdmins、Users の 3 つの役割があります。すべてのユーザーはユーザーに属し、ユーザーは SysAdmins、AppAdmins、またはその両方に属することができます。

SysAdmins および AppAdmins に含まれていないユーザーへのアクセスをブロックする管理ディレクトリを取得できないようです。ログインしているすべてのユーザーを許可するか、誰も許可しません。

現在の構成の関連ビットは次のとおりです。

この構成は現在、すべての人をブロックしていると思います。誰もブロックしない同様の構成を行いました。

問題は、system.web セクションと system.webserver セクションの両方を使用することにあると思われます。この構成を正しく機能させるための助けをいただければ幸いです。

アップデート

<location> 要素から <system.webServer> セクションを削除すると、そのフォルダー内の .aspx ページが正しく返されます。残念ながら、そのフォルダー内の .js ファイルはまだすべてのユーザーに対してブロックされています...理想的には、特権のない目から .js ファイルもロックしたいと思います。だから私はまだ助けを求めています。

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

.net - ProviderException: InvalidCastException

一部のクライアントは定期的に無効なキャスト例外を取得していますが、バリエーションはInvalidCastException/ProviderExceptionですが、どちらもメソッド呼び出しから生成されます。System.Web.Security.SqlRoleProvider.GetRolesForUser(String username)

他のバリエーションは次のとおりです。

例外の種類:InvalidCastException
例外メッセージ: 型のオブジェクトを型にキャストできませSystem.Int32System.String

次のようなアプリケーション イベント ログを確認しました。

誰かがこの問題に遭遇しましたか?もしそうなら、修正は何ですか?

ありがとう

JS

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

asp.net - 高度な .NET メンバーシップ/ロール プロバイダー

次の機能を備えた RoleProvider が必要です。

タスクへの役割
の動的割り当て システム内で動的に割り当てられたタスクに基づいた IPrincipal の認証/承認
現在ログインしているユーザーやその他の一般的な使用統計を示すレポートにアクセスする権限があります。

私は自分自身をロールバックする必要があると確信していますが、OSS や MS から何かを見逃さないようにしたかったのです。

私は ASP.NET MVC も使用しているため、基本的な計画は、次のようなカスタム属性を作成し、[Authorize(Task=Tasks.DeleteClient)] 承認が必要なメソッドの上に配置することです。ロールに対して承認するのではなく、ユーザーが DB で構成した設定に基づいて、ロールに対してタスクを承認します。

考え?

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

asp.net-membership - ASP.NETユニバーサルプロバイダーは、デフォルトのSQLプロバイダーができないことを何を可能にしますか?

ASP.NETユニバーサルプロバイダーのNuGetパッケージのreadmeファイルには、この見積もりが含まれています。

ASP.NETからバージョン4までに出荷されたSqlMembershipProvider、SqlRoleProvider、SqlProfileProviderクラスは、MicrosoftSQLServerとMicrosoftSQLServerExpressのみをサポートします。これらは、MicrosoftSQLAzureやMicrosoftSQLServerCompactなどの新しい製品をサポートしていません。

ただし、Sql Azure http://support.microsoft.com/kb/2006191のカスタムaspnet_regsqlスクリプトを実行し 、web.configでSQL Azureデータベースを指定すると、ASP.NETメンバーシップは正しく機能しているようです。

ユニバーサルプロバイダーが有効にしている、SQL Azureで正確に機能しないものを誰かに教えてもらえますか?

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

asp.net - ActiveDirectoryに関連付けられたセキュリティロールをユーザーに割り当てる方法

アプリケーションのページごとに(Windows認証を使用して)異なるアクセスロールを使用して、SqlRoleProviderを使用してユーザーのアクセスを制限しています。したがって、ユーザーを役割に追加するには、次のようにします。

次に、会社のADグループをアプリケーションに統合して、各ADグループにもこれらのアクセスロールが割り当てられ、特定のADグループの一部のユーザーが自動的にロールを「継承」するようにする必要があります。

私の質問は次のとおりです。

aspnet_Users、aspnet_RolesなどのSQLテーブルを引き続き使用できますか?

ADグループを統合するにはどうすればよいですか?また、ADグループに役割を割り当てるにはどうすればよいですか?(これまでのところ、ユーザーがDirectory Entryを使用して参加しているすべてのADグループを確認できます)。

ユーザーがWindows認証を使用してアプリケーションにログインするときに、ユーザーが特定のADグループの一部であることを確認した後、ADグループごとにユーザーに役割を「付与」または「割り当てる」にはどうすればよいですか。

これらの質問にご協力いただければ幸いです。

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

asp.net - IIS8 Express の SqlRoleProvider

私の Web アプリケーション (WCF サービス) はSqlRoleProviderVisual Studio Development Serverで正常に動作する を使用しています。IIS8 Expressに切り替えると、次のようにスローされNullReferenceExceptionます。

メソッドのドキュメントにIsUserInRoleこの例外のヒントが見つかりませんでした。Visual Studio 開発サーバーに戻すと、機能します。この例外の原因は何ですか?どうすれば適切に修正できますか? プロジェクトのターゲット フレームワーク.NET Framework 4です。

構成された接続文字列は次のとおりです。

そして、これはroleManager/providersノードです:

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

asp.net - ロール プロバイダーは要求ごとにキャッシュしますか?

私の MVC アプリケーションは、個々のページ要求中に複数の場所でユーザーの役割を利用します。私の質問は、デフォルトの SqlRoleProvider がページ要求の存続期間中、現在のユーザーのロールをキャッシュするかどうかです。

たとえば、コントローラー メソッドの属性でロールを使用します。

とカスタムコード

ロール プロバイダーがロールをキャッシュしない場合、既定のロール プロバイダーから継承するカスタム ロール プロバイダーを記述し、メソッドをオーバーライドしてロールを一度取得し、要求期間中キャッシュするのが最善の解決策ですか? これは、Authorize 属性と自分のコードの両方がキャッシュされたロールを利用する方法で実行できますか?

(ご参考までに、私は cacheRolesInCookie web.config オプションを使用して Cookie にロールをキャッシュしたくありません)。

ご提案いただきありがとうございます。

[ジョーの回答からトリガーされた詳細を含めるように編集]

System.Web.Mvc.AuthorizeAttribute を逆コンパイルすると、AuthorizeCore メソッドは、確認する各ロールに対して次のメソッドを呼び出します。

次に、System.Web.Security.RolePrincipal (上記の「ユーザー」) をピアリングすると、以下の両方の方法で、ユーザーのロールのキャッシュされたコピーが実際に使用されます (空の場合はキャッシュにデータが入力されます)。

キャッシュは User のフィールドとして保存されるため、その有効期間はリクエストの間です。

メソッドは、以下を使用して役割を見つけます。

そのため、アプリケーション用に選択したロール プロバイダー (既定またはカスタム) が使用されます。

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

c# - SqlRoleProvider.GetRolesForUser の混乱: 'オブジェクト参照がオブジェクトのインスタンスに設定されていません'

これはほんの少し前に私に起こりました。私のコードではRoles、指定されたユーザーが割り当てられていることを取得する必要があります。

これが私のコードの内容です:

これで問題ありませんが、このビットに到達すると:

Object reference not set to an instance of an objectシステムは、見捨てられた例外をスローします。正直なところ、数分間私を夢中にさせました。しかし、その小さなコードをこれに変更すると (これは明示的な呼び出しですよね?):

コードは機能します。ユーザーの を取得して、好きなようにRoles使用できます。

知りたいのですが、なぜGetRolesForUserinstatiatedを使用してもうまくSqlRoleProviderいかないのですか? これは、私が作業する次のコードでも発生する可能性があるためRemoveUsersFromRolesですAddUsersToRoles。また、プログラムはどのようなインスタンスを探していますか? メソッドが機能するためにインスタンス化していないものは何ですか?

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

c# - 新しい役割をサイトマップに追加

私のプログラムでは、管理者が新しいロールをデータベースに追加するオプションがあります。もちろん、これは次のCreateRoleメソッドを利用しSystem.Web.Security.Rolesます。

今、私は疑問に思っています、SiteMap実行時に my を変更して、新しい役割を特定の のリストに追加できるようにすることはできますrolessiteMapNode? 例えば:

という新しいロールをどこに挿入するかを指定するとsampleRole、siteMapNode は次のようになります。

私のコードビハインドはどのように見えるべきですか?