Правильный способ сделать это - определить поставщика карты сайта в вашем Web.Config
и убедиться, что вы установили атрибут securityTrimmingEnabled="true"
.
<siteMap defaultProvider="MySiteMap">
<providers>
<clear/>
<add
name="MySiteMap"
type="System.Web.XmlSiteMapProvider"
securityTrimmingEnabled="true"
siteMapFile="~/Web.SiteMap" />
</providers>
</siteMap>
В папке Forms
создайте файл Web.Config и включите в него следующее
<?xml version="1.0"?>
<configuration>
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
<location path="New.aspx">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
</configuration>
Теперь ASP.Net позаботится о том, чтобы показать, какие части вашего сайта соответствуют каким пользователям.
Например: в этом случае она будет скрывать вашу My Sample Page
страницу от неаутентифицированных пользователей.