Я использую <asp:Menu>
контроллер для того, чтобы меню на моей странице и ссылка, которая у меня есть на пункты меню, открывалась в новом окне (так как я передаю свойство "Target = _Blank" в элемент управления <asp:Menu>
).Теперь новое окно способно изменить URL родительского окна (используя window.opener.location='http://www.google.com';
), что делает мою исходную страницу уязвимой.Добавление свойства rel = "noopener noreferrer" к элементу управления устраняет эту уязвимость, но оно применимо только для элементов управления <a>
или <asp:Hyperlink>
.Пожалуйста, предложите альтернативу для rel = "noopener noreferrer", которую можно использовать в <asp:Menu>
элементе управления.
Код страницы Tools.sitemap.
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode title="Tools">
<siteMapNode title="Google" url="http://www.google.com"></siteMapNode>
<siteMapNode title="Yahoo" url="http://www.yahoo.com"></siteMapNode>
</siteMapNode>
</siteMap>
Исходный код на исходной странице.
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" SiteMapProvider="ToolsSiteMap" />
<asp:TableCell ID="TableCell3" HorizontalAlign="Left" runat="server" Width="200px">
<asp:Menu ID="NavigationMenu" DataSourceID="SiteMapDataSource1"
StaticDisplayLevels="1"
StaticSubMenuIndent="100"
Orientation="Horizontal"
Font-Size="Medium"
Font-Underline="true"
Target="_blank"
runat="server">
<StaticMenuItemStyle BackColor="#1777B0" ForeColor="White" />
<StaticHoverStyle BackColor="#00508A" />
<DynamicMenuItemStyle BackColor="#1777B0" ForeColor="White" />
<DynamicHoverStyle ForeColor="White" />
</asp:Menu>
</asp:TableCell>