<location path="Report/Default.aspx"> <system.web> <authorization> <allow roles="USER"/> </authorization> </system.web> </location>
protected void AddRoleRule(string location, string selectedrole) { Configuration config = WebConfigurationManager.OpenWebConfiguration(Server.MapPath("~/Web.config")); XmlDocument xDoc = new XmlDocument(); xDoc.Load(config.FilePath); //if the rule exists update the rule //create location element and the path attribute with it's value set to the //selected page XmlElement newLocationelement = xDoc.CreateElement("location"); XmlAttribute newLocationAttrib = xDoc.CreateAttribute("path"); newLocationAttrib.Value = TextBox1.Text; newLocationelement.Attributes.Append(newLocationAttrib); XmlElement newSystemWebelement = xDoc.CreateElement("system.web"); XmlElement newAuthorizationelement = xDoc.CreateElement("authorization"); //create the allow element XmlElement newAllowelement = xDoc.CreateElement("allow"); XmlAttribute newAllowAttrib = xDoc.CreateAttribute("roles"); newAllowelement.Attributes.Append(newAllowAttrib); //create the deny element XmlElement newDenyelement = xDoc.CreateElement("deny"); XmlAttribute newUsersAttrib = xDoc.CreateAttribute("users"); newUsersAttrib.Value = "*"; newDenyelement.Attributes.Append(newUsersAttrib); newAuthorizationelement.AppendChild(newAllowelement); newAuthorizationelement.AppendChild(newDenyelement); newLocationelement.AppendChild(newSystemWebelement); newSystemWebelement.AppendChild(newAuthorizationelement); xDoc.DocumentElement.AppendChild(newLocationelement); xDoc.PreserveWhitespace = true; //write to web.config file using xml writer XmlTextWriter xwriter = new XmlTextWriter(config.FilePath, null); xDoc.WriteTo(xwriter); xwriter.Close(); }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)