問題タブ [securitytrimmingenabled]

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

asp.net - XmlSiteMapProviderは、ユーザーが指定されたロールにあることをどのようにチェックしますか?

を継承して自分のSiteMapProviderをロールしSystem.Web.XmlSiteMapProviderます。

ユーザーがsiteMapNodeのプロパティで指定されたロールにあることを確認するロジックをオーバーライドしたいroles

どうやってやるの?XmlSiteMapProviderは、どのクラスのメンバーを呼び出してそれをチェックしsecurityTrimmingEnabled="true"ますか?

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

asp.net - securityTrimmingEnabled = trueを使用して、ページが開くのをブロックすることは可能ですか?

正しく連携するカスタムSiteMapProviderとRoleProviderがあります。要求されたページに現在のユーザーの役割が記載されていない場合IsAccessibleToUserに返されます。falseSiteMapNode.Roles

そのため、パンくずリストやメニューにはアイテムが表示されません。

ただし、ユーザーは表示されたURLを直接入力して、ページを開くことができます。どうすればそのような動作をブロックできますか?

また、次のWeb.config設定があります。

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

asp.net - 役割ベースのメニューが機能しません。何が間違っていますか?

概要はこちら

  1. メンバーシップを作成する
  2. ロールを作成する
  3. サイトマップの作成 (roles="admin" を使用するように変更)
  4. メニュー スマート タグの新しいデータソースを使用して、メニューを作成し、web.sitemap をメニューにバインドします。
  5. web.config を変更して securityTrimmingEnabled を有効にします

それはこのように動作します。サイトマップのルート ノードにロールを割り当てると、割り当てられているロールを除く他のすべてのロールに対してメニューが正しく非表示になります。

サブメニューの 1 つで役割を使用すると、機能しません。誰かが理由を知っていますか?

web.サイトマップ

web.config ファイル (変更)

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

asp.net - asp.netSiteMapのSecurityTrimming

私は私のサイトで奇妙な問題に直面しています、私は私が扱っているメニューを持っています、asp:menuそして今私はに基づいSiteMapて制限したいので、私はweb.configで使用しています、今私の問題は私が有効にする必要があるいくつかのメニュー項目を持っていることです2種類のユーザー(管理者とログインユーザー)によって、ファイルに作成され、メニューで使用されます。ここに、メニューにアクセスできるユーザーの種類を指定する属性を追加しました。ホームメニューがあります。これらの2人のユーザーのみがアクセスする必要があり、他のユーザーはアクセスできません(つまり、匿名ではありません)。属性で複数の役割を指定する方法が見つかりません。指定も試みましたが、匿名以外のユーザーでも機能するようです。私の要件ではありません、これが私のサンプルですmenu'srolessecurityTrimmingEnable="true"Web.SitemapsiteMapNoderolesroles*web.sitemapファイル

上記の場合、ホームメニューは管理者のみが利用できます。これで、管理者ではないがログインしているユーザーが利用できるように指定*すると、ログインしていないユーザーでも機能します。

とにかく、管理者とログインしているユーザーだけが上記のメニューを利用できるようにすることはできますか?
以下は私のweb.config設定です:

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

clickable - MVCSiteMapProvider: セキュリティ トリミングが有効なクリック不可のノード

私はMVCSiteMapProvider、v4.6.1を使用しています

これは私の問題です。管理者だけに表示されるメニューのセクションがあります。これを実現するには、セキュリティ トリミングを有効にし、コントローラーやコントローラー メソッドをデコレートしてトリミング基準を定義します。

管理タスク

  • 追加
  • 編集
  • 削除する

私がする必要があるのは、「AdminTasks」ノードをクリックできないようにすることですが、それでも管理者だけに表示されます。

私が観察している動作はclickable="false"、サイトマップのように「AdminTasks」をマークすると、ユーザーが管理者であるかどうかに関係なく、すべての人にノードが表示されるということです。マークされたノードclickable='false'では、セキュリティ トリミングが実行されていないようです。

コードを詳しく調べることなく、ノードが とマークされている場合clickable='false'、SiteMapProvider はルートを解決しようとしないと思います (ナビゲーション目的では必要ないため)。ただし、そうすると、コントローラーの装飾が検査されないため、セキュリティ トリミングがスキップされます。

私の仮定は正しいですか?セキュリティがトリミングされたまま、クリックできないノードを作成する方法はありますか?

ありがとう