-
Type: New Feature
-
Status: Resolved
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 10.10
-
Fix Version/s: 10.10-HF32, 11.3, 2021.0
-
Component/s: Core, Core DBS, Core VCS, Security / Rights
Improve the behavior of the ReadVersion permission by defining its semantics more cleanly in terms of inheritance from its live doc:
- a version "inherits" most of its permissions from its live document (and transitively from the ancestors of the live doc),
- a version does not inherit the Read permission,
- but if a live doc has the ReadVersion permission then the version has the Read permission.
This means that Read on a live doc is not sufficient to access the versions, the ReadVersion permission must be present too.
This should be activated based on a feature flag to keep the old behavior if needed.
Note, in all of the above when we say Read it's really Browse that's understood at low-level.
Implementation details:
- change DBSTransactionState.getReadACL,
- change the various SQL stored procedures, for PostgreSQL these are nx_get_read_acl and nx_access_allowed,
- change the regular merged ACL logic,
- change the various higher-level permission checks at the AbstractSession level to be consistent with this.
- causes
-
NXP-30801 Fix NPE in ReadVersion permission replacement
- Resolved
- is related to
-
NXP-27720 NXQL queries should not return versions to a user that does not have ReadVersion permission
- Resolved
- is required by
-
WEBUI-53 Can't see versions info and browse to an older version
- Resolved
- Is referenced in