This feature allows KB Admins (users with KBAdmin role or Admin role) to enable the Protected Version property to some of the versions of the KB. If this features is enabled in a version, only certain users (with KnowledgeBase CommitToProtectedVersions permissions) will be able to commit changes.
This is done by setting one property in the version tree of the KB in the GXserver Web and setting users roles to have the CommitToProtectedVersions permission enabled.
Lets do an easy example of how this works:
1. There is the following KB at the GXserver:
2. There is a need that only certain users can commit to Upgrades for Version 1.
To do so, on the Versions tree just click over one of those versions and select the option Protect Version.
3. After enabaling the Protected Version property you have to set some roles to have this permission.
Note: By default the Admin and KBAdmin roles have this permission already given. KBUser, Guest and Unkown roles dont have this permission enabled by default.
To change this permission just set as active a version that has the Protect Version property enabled and then go to the security tab to do so.
Note: The Protected Version property can be disabled by selecting Unprotect Version option from the contextual menu of the version.
Now only users with a Role that has the CommitToProtectedVersions Permission associated with it can commit to those versions of the KB.
If a User that doesnt have the Permission associated to its role should see the following message when commiting:
========== Commit started ==========
Contacting GeneXus Server at 'http://localhost/gxservertilo'... done!
Exporting Web Panel 'WPV1'...
Compressing output file...
Export File Created At: 'C:\Users\rleira\AppData\Local\Temp\tmpFFD7.xpz'
GeneXus Server: Commit to version Upgrades for Version 1 of KB 'KBDemo' sent by GXTechnical\rodrigol
GeneXus Server: Comments:Comment
GeneXus Server: Checking security permissions
error: GeneXus Server: srv016:You are not authorized to perform this action (KnowledgeBase.Protected Version) on 'KBDemo'
As of GeneXus Server Evolution 1 Upgrade 8.
Note: as of GeneXus X Evolution 2 Upgrade 4 "RestrictedCommits" was renamed to "Protected Version". The following table shows the names after and before the renames:
GeneXus Server Evolution 1 Upgrade 8
From GeneXus Server Evolution 2 Upgrade 4
Enable Restricted Commits
Disable Restricted Commits