diff --git a/src/AccessControl/ZopeGuards.py b/src/AccessControl/ZopeGuards.py index e1d4166..73515f6 100644 --- a/src/AccessControl/ZopeGuards.py +++ b/src/AccessControl/ZopeGuards.py @@ -275,6 +275,12 @@ def __next__(self): next = __next__ +# The following three view classes are used only for mappings of type `dict` +# (not subclasses). Therefore, the mapping does not have security assertions +# and cannot acquire ones. As a consequence, the `guard` calls used in their +# methods verify that the checked key or value is accessible based solely on +# its own virtues, i.e. either because it is public or has its own security +# assertions allowing access. class _SafeMappingView: __allow_access_to_unprotected_subobjects__ = 1