NSFileRepo

From BlueSpice

Jump to: navigation, search


NSFileRepo
Implements per-namespace group permissions for image and file rights protection
State: stable
Developer: HalloWelt
Type of extension: BlueSpice
Edition: BlueSpice pro
Dependency: BlueSpice
Software package: DocumentManager
Category: Document Management
Documentation at MediaWiki.org

Provide namespace based features to uploaded files


The NSFileRepo extension restricts access to upload and read files and images to a given set of user groups associated with protected namespaces. Using this extension (within the security limitations noted above), you can protect not only pages and areas of your wiki, but also any uploaded images or files within those namespaces.


Usage[<a href="https://www.mediawiki.org/w/index.php?title=Extension:NSFileRepo&action=edit&section=1" title="Edit section: Usage">edit]

Generically, you use the same syntax as a normal file reference link, adding the namespace between the file specifier ("File", "Image" or "Media") and the file name:

[[{FILE_NS}:{Namespace}:{Filename}]]

Example (where Private is the protected namespace and Filename.jpg is the file to which you wish to limit access):

[[File:Private:Filename.jpg]]

The standard for accessing files is generally:

[[File:Filename.jpg]]
[[Image:Filename.jpg]]
[[Media:Filename.jpg]]

This extension allows you to protect access to files by adding the namespace text identifier after the file namespace identifier, for example (where Private is the protected namespace and Filename.jpg is the file to which you wish to limit access):

[[File:Private:Filename.jpg]]
[[Image:Private:Filename.jpg]]
[[Media:Private:Filename.jpg]]

It may be helpful to understand the default security model used by MediaWiki using the instructions below:

Limitations of security are the same as for Extension:Lockdown. To review these limitations, see here.

To use the full capabilities of this extension (for example, specific namespace protections) you will need to install and use the namespace protections provided through Extension:Lockdown.

This extension was made possible by the introduction of Repository Classes by Tim Starling - an elegant and brilliant implementation. It uses a new Local Repository class mechanism. Technical details on how this extension works can be found here.