The System.Security.AccessControl.PropagationFlags enum seems to have bad descriptions of its enumerated values. #10867
Labels
area-System.Security
Issues related to security practices for .NET developers.
untriaged
New issue has not been triaged by the area owner
Type of issue
Other (describe below)
Description
The Fields table description of System.Security.AccessControl.PropagationFlags::None currently says, "Specifies that no inheritance flags are set." But in the overall description of System.Security.AccessControl.PropagationFlags it says, "These flags are significant only if inheritance flags are present." As such, the value None for PropagationFlags only has significance if there are InheritanceFlags set.
I believe that the description for the Field System.Security.AccessControl.PropagationFlags::None should instead be describing what happens to the ACE when this value is set. Something like, "Specifies that the inheritance flags are passed on to child container objects unchanged."
The description of System.Security.AccessControl.PropagationFlags::NoPropagateInherit says, "Specifies that the ACE is not propagated to child objects." Is this correct? Or does this flag mean that child objects and containers inherit the ACE, but child containers do not inherit the InheritanceFlags of the ACE?
And for both NoPropagateInherit and InheritOnly, what should happen to the PropagationFlags of the ACE as it passes on to child containers?
Page URL
https://learn.microsoft.com/en-us/dotnet/api/system.security.accesscontrol.propagationflags?view=net-9.0
Content source URL
https://github.com/dotnet/dotnet-api-docs/blob/main/xml/System.Security.AccessControl/PropagationFlags.xml
Document Version Independent Id
85324b83-52f2-61dd-0115-a279b8b7821c
Article author
@dotnet-bot
The text was updated successfully, but these errors were encountered: