Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Ferdy Hoefakker 214 posts 248 karma points
    Oct 30, 2012 @ 12:30
    Ferdy Hoefakker
    0

    Role protection suddenly disappeared

    For one of our clients, the role based protection of their website keeps on disappearing. I have searched the forums, but there doesn't seem to be a solution to this specific problem.

    -Ferdy

  • Ferdy Hoefakker 214 posts 248 karma points
    Nov 05, 2012 @ 13:44
    Ferdy Hoefakker
    0

    Can someone PLEASE help me with this? It just happened again, and while it's no problem to just add the roleprotection again, it is quite frustrating since our client uses it to keep some information on a need to know basis.


    We REALLY need this fixed and I'm at wits end at the moment.

    -Ferdy

  • Carsten Fallesen 35 posts 154 karma points
    Nov 06, 2012 @ 15:10
    Carsten Fallesen
    0

    Do you by any chance have a maintenance task that wipes the App_Data/access.config file?

    /Carsten

  • Ferdy Hoefakker 214 posts 248 karma points
    Nov 06, 2012 @ 15:25
    Ferdy Hoefakker
    0

    Hi Carsten

    There are no maintaince tasks  that do this, but I did check the file you mentioned. It was a pretty big and weird looking mess with several nodes being included multiple times or referencing non-existing pages... So I made a backup and cleared out the entire file, touched the web.config and reassigned the roleprotection to how it's supposed to be. The file has now been updated by Umbraco and looks correct (at least, in the file I can see an XML version of my manual configuration rather then a steaming pile of shit like before).

    So, here's hoping that did it!

    Thanks for your input.

    -Ferdy

  • Ferdy Hoefakker 214 posts 248 karma points
    Nov 07, 2012 @ 10:19
    Ferdy Hoefakker
    0

    Ok, the above post does nothing to improve our situation as it just happened again. We double checked the access.config and it's still there and has the correct data. I -REALLY- need a solution for this.

    -Ferdy

  • Ferdy Hoefakker 214 posts 248 karma points
    Nov 08, 2012 @ 10:14
    Ferdy Hoefakker
    0

    Does anyone else have any suggestions? As I have said before, I -REALLY- need this fixed as soon as possible.

    -Ferdy

    Edit:

    Okay, I found this in the log, the timestamps seem to correspond with the moments our roles are reset and the pages involved include the pages we use for the login and error pages. Not sure if this is relevant or not, but figured I'd might as well post it:

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://fr.******.info/rechercher' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://fr.******.info/geen-toegangsrechten' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://fr.******.info/login' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://be.******.info/zoek' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://fr.******.info/pagina's' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://fr.******.info' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://be.******.info/geen-toegangsrechten' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://be.******.info/login' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.InvalidOperationException: Multiple nodes with the same URL '/pagina's-vl/hotnews-vl-(button-niet-zichtbaar)/embargo-update' were found. XmlSiteMapProvider requires that sitemap nodes have unique URLs.     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://be.******.info/pagina's-vl' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://be.******.info' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.InvalidOperationException: Multiple nodes with the same URL '/pagina's-nl/actie-memo's-nl/actiememo-aangenaam-klassiek' were found. XmlSiteMapProvider requires that sitemap nodes have unique URLs.     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

    Error adding to SiteMapProvider: System.Web.HttpException: 'http://******.info' is not a valid virtual path.     at System.Web.Util.UrlPath.CheckValidVirtualPath(String path)     at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)     at System.Web.StaticSiteMapProvider.AddNode(SiteMapNode node, SiteMapNode parentNode)     at umbraco.presentation.nodeFactory.UmbracoSiteMapProvider.loadNodes(String parentId, SiteMapNode parentNode)

  • Ferdy Hoefakker 214 posts 248 karma points
    Nov 09, 2012 @ 12:27
    Ferdy Hoefakker
    0

    Sorry for bumping this yet again, but I really need help :(

    -Ferdy

  • Ferdy Hoefakker 214 posts 248 karma points
    Nov 23, 2012 @ 16:32
    Ferdy Hoefakker
    0

    Bump again :(

    -Ferdy

  • Ferdy Hoefakker 214 posts 248 karma points
    Dec 06, 2012 @ 15:27
    Ferdy Hoefakker
    0

    Okay, I REALLY need help with this.

    It is starting to happen with more and more of our installations, even ones we haven't even touched in months.

  • Stephen 767 posts 2273 karma points c-trib
    Dec 07, 2012 @ 10:38
    Stephen
    0

    What version of Umbraco?

    Do you need the sitemap provider? Else can you try disabling it?

  • Ferdy Hoefakker 214 posts 248 karma points
    Dec 07, 2012 @ 10:41
    Ferdy Hoefakker
    0

    Oh woops, guess I forgot to mention. Its our Umbraco 4.5.2 installs that are experiencing this problem which are running on a Windows 2003 server with a windows 2008 database server.

    Anyway, I'll go check if disabling the sitemap provider will help.

    -Ferdy

  • Ferdy Hoefakker 214 posts 248 karma points
    Dec 07, 2012 @ 10:43
    Ferdy Hoefakker
    0

    Okay, silly question... where do I disable this? XD

     

    -edit-

    Nevermind, found it. Made a typo while searching in the web.config causing it to return no results.

  • Ferdy Hoefakker 214 posts 248 karma points
    Dec 07, 2012 @ 10:54
    Ferdy Hoefakker
    0

    Okay, I tried disabling the sitemap provider, but then I can no longer publish nodes as I get the following error on trying:

    This feature is currently disabled, please enable section system.web/siteMap in the configuration file.

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.InvalidOperationException: This feature is currently disabled, please enable section system.web/siteMap in the configuration file.

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.


    Stack Trace:

    [InvalidOperationException: This feature is currently disabled, please enable section system.web/siteMap in the configuration file.]
       System.Web.SiteMap.Initialize() +401
       System.Web.SiteMap.get_Provider() +4
       umbraco.content.PublishNodeDo(Document d, XmlDocument xmlContentCopy, Boolean updateSitemapProvider) +231
       umbraco.content.UpdateDocumentCache(Document d) +395
       umbraco.content.UpdateDocumentCache(Int32 pageId) +72
       umbraco.library.UpdateDocumentCache(Int32 DocumentId) +146
       umbraco.cms.presentation.editContent.Publish(Object sender, EventArgs e) +459
       System.EventHandler.Invoke(Object sender, EventArgs e) +0
       umbraco.controls.ContentControl.savePublish(Object Sender, ImageClickEventArgs e) +96
       System.Web.UI.WebControls.ImageButton.OnClick(ImageClickEventArgs e) +108
       System.Web.UI.WebControls.ImageButton.RaisePostBackEvent(String eventArgument) +118
       System.Web.UI.WebControls.ImageButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565
    

  • Stephen 767 posts 2273 karma points c-trib
    Dec 07, 2012 @ 10:58
    Stephen
    0

    Oops. On our prod. sites we disable it by removing the entire <siteMap /> element in web.config... not sure that just turning enabled to false works.

  • Ferdy Hoefakker 214 posts 248 karma points
    Dec 07, 2012 @ 11:08
    Ferdy Hoefakker
    0

    Ah, I thought that was a bit too drastic of a measure, so I figured I'd just set enabled to false haha. Anyway, I removed the entire element and it seems to work. I'll let you know how it goes!

    -Ferdy

  • Ferdy Hoefakker 214 posts 248 karma points
    Dec 19, 2012 @ 11:05
    Ferdy Hoefakker
    0

    Unfortunately, it didn't solve our problem as it just happened again not five minutes ago.

    Any other suggestions?

    -Ferdy

  • Sebastiaan Janssen 5053 posts 15508 karma points MVP admin hq
    Dec 19, 2012 @ 11:32
    Sebastiaan Janssen
    0

    I would start by hooking into all of the event handlers that the Access class has so you can debug and figure out where exactly it goes wrong. There's still the possibility that it's not even Umbraco-related, so at least you'd be able to find that out as well, here's a quick eventhandler to get you going (believe it should work in 4.5.2 as well):

    using System.IO;
    using System.Linq;
    using umbraco.BusinessLogic;
    using umbraco.IO;
    using umbraco.cms.businesslogic.web;
    
    namespace Umbraco.Extensions.EventHandlers
    {
        public class AccessLog : ApplicationBase
        {
            public AccessLog()
            {
                Access.BeforeSave += Access_BeforeSave;
            }
    
            private void Access_BeforeSave(Access sender, umbraco.cms.businesslogic.SaveEventArgs e)
            {
                Log.Add(LogTypes.Debug, -1, "About to save access file");
    
                if(File.Exists(IOHelper.MapPath(SystemFiles.AccessXml, true)))
                    Log.Add(LogTypes.Debug, -1, "It's still here!");
                else
                    Log.Add(LogTypes.Debug, -1, "Oh noes, something must've gone horribly wrong while saving this file");
            }
        }
    }
  • Ferdy Hoefakker 214 posts 248 karma points
    Dec 19, 2012 @ 11:42
    Ferdy Hoefakker
    0

    Thanks Sebastian, I'll go implement it. Though, just a random thought, would it perhaps be smarter to check the CONTENTS of the Access.xml file? The file it self is still there afterall, it just either turns into a garbled mess or gets (partially) ignored.

    Umbraco seems to still knows the page is for members only, it just doesn't seem to remember which page it has to redirect non logged in users towards.

    -Ferdy

  • Sebastiaan Janssen 5053 posts 15508 karma points MVP admin hq
    Dec 19, 2012 @ 11:55
    Sebastiaan Janssen
    0

    Ah I didn't read properly, didn't realize the file was just being corrupted.. So yeah, it would be better to check the content. Also make sure to compare the file when it was still correct to the file which has the corruption, that should narrow down where exactly the problem is introduced. 

Please Sign in or register to post replies

Write your reply to:

Draft