Access rights on an UnifiedFile

Vote:
 
I have added a file to a directory handled by the VirtualPathVersioningProvider and removed the access rights for everyone. Then I'm trying to check the access rights on the file (without using a try/catch of course!) before trying to access it. My first guess was VirtualPathUnifiedProvider.HasAccessToVirtualPath( string virtualPath ), but since this method doesn't check with the VirtualPathProvider (just the location authorization), it doesn't work for my purposes. The HostingEnvironment.VirtualPathProvider.GetFile( string virutalPath ) throws an UnauthorizedAccessException, so the Query[Distinct]Access on the UnifiedFile object is pretty much useless to me I guess. Is there something missing in the implementation or do you have some pointers how to implement this? Thx
#15740
Mar 25, 2008 19:07
Vote:
 
Our implementation is built upon the VirtualPathProvider (VPP) implementation in ASP.NET 2.0. The way to get a file or directory in this API is to use HostingEnvironment.VirtualPathProvider.GetFile( string virutalPath ) or HostingEnvironment.VirtualPathProvider.GetDirectory( string virutalPath ) Our implementation idea is that it should be uniform to program against the file system regardless of the acutal VPP implemenation that serves the file, that is you should not need to make special handling e.g. for the case the serving provider is VirtualPathVersioningProvider. Unfortunately the ASP.NET 2.0 VPP API offers no way to query acess for a file or directory without doing an actual file request. So in your case you need to handle that UnauthorizedAccessException can be thrown.
#16261
Mar 25, 2008 19:08
Vote:
 
But this also means that you cannot use the UnifiedFileSystem as a "system" folder like your recent article about UFS (http://www.episerver.com/en/EPiServer_Knowledge_Center/Documentation/Articles/Development/Tips-for-the-unified-file-system/) suggests. This since you cannot access a file with different access rights than the current user has without doing some serious impersonation. So no more easy to use xml-settings files in UFS?
#16262
Mar 25, 2008 19:08
Vote:
 
I see your point and can agree that there might be a need to expose a way to get a file/directory according to a given access level. I have created an issue in our bug system on this. It will though not be included in the release but probably in the next minor realese (SP1). Thank you for your input.
#16263
Mar 25, 2008 19:08
This thread is locked and should be used for reference only. Please use the Episerver CMS 7 and earlier versions forum to open new discussions.