winacl, a cross platform Go library to work with ntSecurityDescriptor.
- Parsing of Access Control Entries (ACE) of various types:
- ACE type
ACCESS_ALLOWED_ACE
- ACE type
ACCESS_ALLOWED_OBJECT_ACE
- ACE type
ACCESS_DENIED_ACE
- ACE type
ACCESS_DENIED_OBJECT_ACE
- ACE type
ACCESS_ALLOWED_CALLBACK_ACE
- ACE type
ACCESS_DENIED_CALLBACK_ACE
- ACE type
ACCESS_ALLOWED_CALLBACK_OBJECT_ACE
- ACE type
ACCESS_DENIED_CALLBACK_OBJECT_ACE
- ACE type
SYSTEM_AUDIT_ACE
- ACE type
SYSTEM_AUDIT_OBJECT_ACE
- ACE type
SYSTEM_AUDIT_CALLBACK_ACE
- ACE type
SYSTEM_MANDATORY_LABEL_ACE
- ACE type
SYSTEM_AUDIT_CALLBACK_OBJECT_ACE
- ACE type
SYSTEM_RESOURCE_ATTRIBUTE_ACE
- ACE type
SYSTEM_SCOPED_POLICY_ID_ACE
- ACE type
- Parsing of SID
- Connect to LDAP to resolve sAMAccountNames of not well known SIDs
- Resolve names of well known SIDs
- Parsing of Access Control Lists (ACL):
- Print if ACL is in canonical form
Pull requests are welcome. Feel free to open an issue if you want to add other features.