= Protect parts of a wiki page from invalid access = == Description == With the TracProtected macro it is possible to limit access to parts of a wiki page. A protected part has the following syntax: {{{ {{{ #!protected #:This is what an unauthorized user sees (optional) This is what an authorized user sees }}} }}} A protected part can use !protected, !protected-red, !protected-blue, or !protected-green to provide access restrictions on different levels. Users will only see these protected sections when they have the permissions "PROTECTED_VIEW", "PROTECTED_RED_VIEW", "PROTECTED_BLUE_VIEW", or "PROTECTED_GREEN_VIEW", respectively. A #!protected part will be rendered with a red line to the left, a #!protected-blue part will be rendered with a blue line to the left, etc. Attachments are protected when the key-string "!protected", "!protected-red", "!protected-blue", or "!protected-green" is present in the attachment's description. To enable the attachment protection the conf/trac.ini must be modified. Add the ProtectedAttachmentPolicy to the permission_policies: {{{ [trac] permission_policies = ProtectedAttachmentPolicy, DefaultPermissionPolicy }}} Note: a user who is allowed to edit the wiki page will always be able to see (and edit) protected parts. Improvements: * Filter out hidden parts when editing a wiki page * Supply an admin feature to add/edit protected-xxx * Supply an admin feature to edit the style/template for a permission part * Give visual feedback for unauthorized attachments in the attachment list == Bugs/Feature Requests == Existing bugs and feature requests for ProtectedMacro are [report:9?COMPONENT=ProtectedMacro here]. If you have any issues, create a [http://trac-hacks.org/newticket?component=ProtectedMacro&owner=frayja new ticket]. == Download == Download the zipped source from [download:protectedmacro here]. == Source == You can check out ProtectedMacro from [http://trac-hacks.org/svn/protectedmacro here] using Subversion, or [source:protectedmacro browse the source] with Trac. == Example == {{{ {{{ #!protected #: This will only be visible to those that do not have the PROTECTED_VIEW This will only be visible to those that have PROTECTED_VIEW Will show all content with a red line to the left }}} {{{ #!protected-red #: This will only be visible to those that do not have the PROTECTED_RED_VIEW This will only be visible to those that have PROTECTED_RED_VIEW Will show all content with a red line to the left }}} {{{ #!protected-blue #: This will only be visible to those that do not have the PROTECTED_BLUE_VIEW This will only be visible to those that have PROTECTED_BLUE_VIEW Will show all content with a blue line to the left }}} {{{ #!protected-green #: This will only be visible to those that do not have the PROTECTED_GREEN_VIEW This will only be visible to those that have PROTECTED_GREEN_VIEW Will show all content with a green line to the left }}} }}} == Recent Changes == [[ChangeLog(protectedmacro, 3)]] == Author/Contributors == '''Author:''' [wiki:frayja] [[BR]] '''Contributors:'''