1

ユーザーが「政治家」または「労働者」の 2 つの許可された役割のいずれかを持っている場合にのみアクセスできる 1 つの Web ページがあります。どのユーザー ロールからアクセスするかによって、ナビゲーション サイトマップ内の Web のタイトルが異なる必要があります。

私たちの web.config では、このページは「政治家」または「労働者」の 2 つの役割でアクセスするように構成されており、web.sitemap には次のコードがあります。

<siteMapNode url="DoTask.aspx?Validator=Worker" title="TitleForRole" roles="Worker" />
<siteMapNode url="DoTask.aspx?Validator=Politician" title="TitleFolRoleB"  roles="Politician" />

問題は、ユーザーがサイトマップのロールの 1 つしか持っていないにもかかわらず、2 つのリンクが表示されることです。

ユーザーがサイトマップで役割を持っているリンクのみを表示する方法はありますか?

1 つの解決策は、DoTask.aspx にリダイレクトしてサイトマップを変更する役割の 1 つのページを作成することです。

<siteMapNode url="DoTask.aspx?Validator=Worker" title="TitleForRole" roles="Worker" />
<siteMapNode url="RedirectToDoTask.aspx" title="TitleFolRoleB" roles="Politician" />

しかし、これはエレガントな解決策ではないと思います。別のページを作成することは避けたいと思います。

ご協力いただきありがとうございます。

4

1 に答える 1

1

http://weblogs.asp.net/jgalloway/archive/2008/01/26/asp-net-menu-and-sitemap-security-trimming-plus-a-trick-for-の手順に従って実行できます。 when-your-menu-and-security-don-t-match-up.aspx

于 2013-02-22T21:26:59.670 に答える