diff --git a/docs/source/conf.py b/docs/source/conf.py index 5b9cf0a..9d6800c 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -71,9 +71,9 @@ copyright = u'2015, Clement Rouault' # built documents. # # The short X.Y version. -version = '0.4' +version = '0.5' # The full version, including alpha/beta/rc tags. -release = '0.4' +release = '0.5' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/docs/source/security.rst b/docs/source/security.rst index 90deef0..ae043a8 100644 --- a/docs/source/security.rst +++ b/docs/source/security.rst @@ -40,7 +40,7 @@ Acl """ .. autoclass:: Acl - :special-members: __len__, __iter__ + :special-members: __len__, __iter__, __getitem__ .. _security_ace: diff --git a/docs/source/windef_generated.rst b/docs/source/windef_generated.rst index 980469c..8853e32 100644 --- a/docs/source/windef_generated.rst +++ b/docs/source/windef_generated.rst @@ -962,56 +962,6 @@ Windef .. autodata:: NMPWAIT_WAIT_FOREVER .. autodata:: NMPWAIT_NOWAIT .. autodata:: NMPWAIT_USE_DEFAULT_WAIT -.. autodata:: EVENTLOG_SUCCESS -.. autodata:: EVENTLOG_ERROR_TYPE -.. autodata:: EVENTLOG_WARNING_TYPE -.. autodata:: EVENTLOG_INFORMATION_TYPE -.. autodata:: EVENTLOG_AUDIT_SUCCESS -.. autodata:: EVENTLOG_AUDIT_FAILURE -.. autodata:: EVENTLOG_SEQUENTIAL_READ -.. autodata:: EVENTLOG_SEEK_READ -.. autodata:: EVENTLOG_FORWARDS_READ -.. autodata:: EVENTLOG_BACKWARDS_READ -.. autodata:: EVT_VARIANT_TYPE_MASK -.. autodata:: EVT_VARIANT_TYPE_ARRAY -.. autodata:: ERROR_EVT_INVALID_CHANNEL_PATH -.. autodata:: ERROR_EVT_INVALID_QUERY -.. autodata:: ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND -.. autodata:: ERROR_EVT_EVENT_TEMPLATE_NOT_FOUND -.. autodata:: ERROR_EVT_INVALID_PUBLISHER_NAME -.. autodata:: ERROR_EVT_INVALID_EVENT_DATA -.. autodata:: ERROR_EVT_CHANNEL_NOT_FOUND -.. autodata:: ERROR_EVT_MALFORMED_XML_TEXT -.. autodata:: ERROR_EVT_SUBSCRIPTION_TO_DIRECT_CHANNEL -.. autodata:: ERROR_EVT_CONFIGURATION_ERROR -.. autodata:: ERROR_EVT_QUERY_RESULT_STALE -.. autodata:: ERROR_EVT_QUERY_RESULT_INVALID_POSITION -.. autodata:: ERROR_EVT_NON_VALIDATING_MSXML -.. autodata:: ERROR_EVT_FILTER_ALREADYSCOPED -.. autodata:: ERROR_EVT_FILTER_NOTELTSET -.. autodata:: ERROR_EVT_FILTER_INVARG -.. autodata:: ERROR_EVT_FILTER_INVTEST -.. autodata:: ERROR_EVT_FILTER_INVTYPE -.. autodata:: ERROR_EVT_FILTER_PARSEERR -.. autodata:: ERROR_EVT_FILTER_UNSUPPORTEDOP -.. autodata:: ERROR_EVT_FILTER_UNEXPECTEDTOKEN -.. autodata:: ERROR_EVT_INVALID_OPERATION_OVER_ENABLED_DIRECT_CHANNEL -.. autodata:: ERROR_EVT_INVALID_CHANNEL_PROPERTY_VALUE -.. autodata:: ERROR_EVT_INVALID_PUBLISHER_PROPERTY_VALUE -.. autodata:: ERROR_EVT_CHANNEL_CANNOT_ACTIVATE -.. autodata:: ERROR_EVT_FILTER_TOO_COMPLEX -.. autodata:: ERROR_EVT_MESSAGE_NOT_FOUND -.. autodata:: ERROR_EVT_MESSAGE_ID_NOT_FOUND -.. autodata:: ERROR_EVT_UNRESOLVED_VALUE_INSERT -.. autodata:: ERROR_EVT_UNRESOLVED_PARAMETER_INSERT -.. autodata:: ERROR_EVT_MAX_INSERTS_REACHED -.. autodata:: ERROR_EVT_EVENT_DEFINITION_NOT_FOUND -.. autodata:: ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND -.. autodata:: ERROR_EVT_VERSION_TOO_OLD -.. autodata:: ERROR_EVT_VERSION_TOO_NEW -.. autodata:: ERROR_EVT_CANNOT_OPEN_CHANNEL_OF_QUERY -.. autodata:: ERROR_EVT_PUBLISHER_DISABLED -.. autodata:: ERROR_EVT_FILTER_OUT_OF_RANGE .. autodata:: IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA .. autodata:: IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE .. autodata:: IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY @@ -1049,99 +999,6 @@ Windef .. autodata:: IMAGE_REL_BASED_MACHINE_SPECIFIC_8 .. autodata:: IMAGE_REL_BASED_MACHINE_SPECIFIC_9 .. autodata:: IMAGE_REL_BASED_DIR64 -.. autodata:: ACCESS_MIN_MS_ACE_TYPE -.. autodata:: ACCESS_ALLOWED_ACE_TYPE -.. autodata:: ACCESS_DENIED_ACE_TYPE -.. autodata:: SYSTEM_AUDIT_ACE_TYPE -.. autodata:: SYSTEM_ALARM_ACE_TYPE -.. autodata:: ACCESS_MAX_MS_V2_ACE_TYPE -.. autodata:: ACCESS_ALLOWED_COMPOUND_ACE_TYPE -.. autodata:: ACCESS_MAX_MS_V3_ACE_TYPE -.. autodata:: ACCESS_MIN_MS_OBJECT_ACE_TYPE -.. autodata:: ACCESS_ALLOWED_OBJECT_ACE_TYPE -.. autodata:: ACCESS_DENIED_OBJECT_ACE_TYPE -.. autodata:: SYSTEM_AUDIT_OBJECT_ACE_TYPE -.. autodata:: SYSTEM_ALARM_OBJECT_ACE_TYPE -.. autodata:: ACCESS_MAX_MS_OBJECT_ACE_TYPE -.. autodata:: ACCESS_MAX_MS_V4_ACE_TYPE -.. autodata:: ACCESS_MAX_MS_ACE_TYPE -.. autodata:: ACCESS_ALLOWED_CALLBACK_ACE_TYPE -.. autodata:: ACCESS_DENIED_CALLBACK_ACE_TYPE -.. autodata:: ACCESS_ALLOWED_CALLBACK_OBJECT_ACE_TYPE -.. autodata:: ACCESS_DENIED_CALLBACK_OBJECT_ACE_TYPE -.. autodata:: SYSTEM_AUDIT_CALLBACK_ACE_TYPE -.. autodata:: SYSTEM_ALARM_CALLBACK_ACE_TYPE -.. autodata:: SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE -.. autodata:: SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE -.. autodata:: SYSTEM_MANDATORY_LABEL_ACE_TYPE -.. autodata:: ACCESS_MAX_MS_V5_ACE_TYPE -.. autodata:: SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE -.. autodata:: SYSTEM_SCOPED_POLICY_ID_ACE_TYPE -.. autodata:: SYSTEM_PROCESS_TRUST_LABEL_ACE_TYPE -.. autodata:: ACCESS_MAX_MS_V5_ACE_TYPE -.. autodata:: SEC_WINNT_AUTH_IDENTITY_ANSI -.. autodata:: SEC_WINNT_AUTH_IDENTITY_UNICODE -.. autodata:: SE_OWNER_DEFAULTED -.. autodata:: SE_GROUP_DEFAULTED -.. autodata:: SE_DACL_PRESENT -.. autodata:: SE_DACL_DEFAULTED -.. autodata:: SE_SACL_PRESENT -.. autodata:: SE_SACL_DEFAULTED -.. autodata:: SE_DACL_AUTO_INHERIT_REQ -.. autodata:: SE_SACL_AUTO_INHERIT_REQ -.. autodata:: SE_DACL_AUTO_INHERITED -.. autodata:: SE_SACL_AUTO_INHERITED -.. autodata:: SE_DACL_PROTECTED -.. autodata:: SE_SACL_PROTECTED -.. autodata:: SE_RM_CONTROL_VALID -.. autodata:: SE_SELF_RELATIVE -.. autodata:: SDDL_REVISION_1 -.. autodata:: ACE_OBJECT_TYPE_PRESENT -.. autodata:: ACE_INHERITED_OBJECT_TYPE_PRESENT -.. autodata:: OBJECT_INHERIT_ACE -.. autodata:: CONTAINER_INHERIT_ACE -.. autodata:: NO_PROPAGATE_INHERIT_ACE -.. autodata:: INHERIT_ONLY_ACE -.. autodata:: INHERITED_ACE -.. autodata:: VALID_INHERIT_FLAGS -.. autodata:: SUCCESSFUL_ACCESS_ACE_FLAG -.. autodata:: FAILED_ACCESS_ACE_FLAG -.. autodata:: SYSTEM_MANDATORY_LABEL_NO_WRITE_UP -.. autodata:: SYSTEM_MANDATORY_LABEL_NO_READ_UP -.. autodata:: SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP -.. autodata:: SYSTEM_PROCESS_TRUST_LABEL_VALID_MASK -.. autodata:: SYSTEM_PROCESS_TRUST_NOCONSTRAINT_MASK -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_INVALID -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_INT64 -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_UINT64 -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_STRING -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_FQBN -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_SID -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_BOOLEAN -.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_OCTET_STRING -.. autodata:: SE_GROUP_MANDATORY -.. autodata:: SE_GROUP_ENABLED_BY_DEFAULT -.. autodata:: SE_GROUP_ENABLED -.. autodata:: SE_GROUP_OWNER -.. autodata:: SE_GROUP_USE_FOR_DENY_ONLY -.. autodata:: SE_GROUP_INTEGRITY -.. autodata:: SE_GROUP_INTEGRITY_ENABLED -.. autodata:: SE_GROUP_LOGON_ID -.. autodata:: SE_GROUP_RESOURCE -.. autodata:: SE_GROUP_VALID_ATTRIBUTES -.. autodata:: OWNER_SECURITY_INFORMATION -.. autodata:: GROUP_SECURITY_INFORMATION -.. autodata:: DACL_SECURITY_INFORMATION -.. autodata:: SACL_SECURITY_INFORMATION -.. autodata:: LABEL_SECURITY_INFORMATION -.. autodata:: ATTRIBUTE_SECURITY_INFORMATION -.. autodata:: SCOPE_SECURITY_INFORMATION -.. autodata:: PROCESS_TRUST_LABEL_SECURITY_INFORMATION -.. autodata:: BACKUP_SECURITY_INFORMATION -.. autodata:: PROTECTED_DACL_SECURITY_INFORMATION -.. autodata:: PROTECTED_SACL_SECURITY_INFORMATION -.. autodata:: UNPROTECTED_DACL_SECURITY_INFORMATION -.. autodata:: UNPROTECTED_SACL_SECURITY_INFORMATION .. autodata:: CERT_QUERY_OBJECT_FILE .. autodata:: CERT_QUERY_OBJECT_BLOB .. autodata:: CERT_QUERY_CONTENT_CERT @@ -1743,6 +1600,149 @@ Windef .. autodata:: CMSG_CTRL_VERIFY_SIGNATURE_EX .. autodata:: CMSG_CTRL_ADD_CMS_SIGNER_INFO .. autodata:: CMSG_CTRL_ENABLE_STRONG_SIGNATURE +.. autodata:: ACCESS_MIN_MS_ACE_TYPE +.. autodata:: ACCESS_ALLOWED_ACE_TYPE +.. autodata:: ACCESS_DENIED_ACE_TYPE +.. autodata:: SYSTEM_AUDIT_ACE_TYPE +.. autodata:: SYSTEM_ALARM_ACE_TYPE +.. autodata:: ACCESS_MAX_MS_V2_ACE_TYPE +.. autodata:: ACCESS_ALLOWED_COMPOUND_ACE_TYPE +.. autodata:: ACCESS_MAX_MS_V3_ACE_TYPE +.. autodata:: ACCESS_MIN_MS_OBJECT_ACE_TYPE +.. autodata:: ACCESS_ALLOWED_OBJECT_ACE_TYPE +.. autodata:: ACCESS_DENIED_OBJECT_ACE_TYPE +.. autodata:: SYSTEM_AUDIT_OBJECT_ACE_TYPE +.. autodata:: SYSTEM_ALARM_OBJECT_ACE_TYPE +.. autodata:: ACCESS_MAX_MS_OBJECT_ACE_TYPE +.. autodata:: ACCESS_MAX_MS_V4_ACE_TYPE +.. autodata:: ACCESS_MAX_MS_ACE_TYPE +.. autodata:: ACCESS_ALLOWED_CALLBACK_ACE_TYPE +.. autodata:: ACCESS_DENIED_CALLBACK_ACE_TYPE +.. autodata:: ACCESS_ALLOWED_CALLBACK_OBJECT_ACE_TYPE +.. autodata:: ACCESS_DENIED_CALLBACK_OBJECT_ACE_TYPE +.. autodata:: SYSTEM_AUDIT_CALLBACK_ACE_TYPE +.. autodata:: SYSTEM_ALARM_CALLBACK_ACE_TYPE +.. autodata:: SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE +.. autodata:: SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE +.. autodata:: SYSTEM_MANDATORY_LABEL_ACE_TYPE +.. autodata:: ACCESS_MAX_MS_V5_ACE_TYPE +.. autodata:: SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE +.. autodata:: SYSTEM_SCOPED_POLICY_ID_ACE_TYPE +.. autodata:: SYSTEM_PROCESS_TRUST_LABEL_ACE_TYPE +.. autodata:: ACCESS_MAX_MS_V5_ACE_TYPE +.. autodata:: SEC_WINNT_AUTH_IDENTITY_ANSI +.. autodata:: SEC_WINNT_AUTH_IDENTITY_UNICODE +.. autodata:: SE_OWNER_DEFAULTED +.. autodata:: SE_GROUP_DEFAULTED +.. autodata:: SE_DACL_PRESENT +.. autodata:: SE_DACL_DEFAULTED +.. autodata:: SE_SACL_PRESENT +.. autodata:: SE_SACL_DEFAULTED +.. autodata:: SE_DACL_AUTO_INHERIT_REQ +.. autodata:: SE_SACL_AUTO_INHERIT_REQ +.. autodata:: SE_DACL_AUTO_INHERITED +.. autodata:: SE_SACL_AUTO_INHERITED +.. autodata:: SE_DACL_PROTECTED +.. autodata:: SE_SACL_PROTECTED +.. autodata:: SE_RM_CONTROL_VALID +.. autodata:: SE_SELF_RELATIVE +.. autodata:: SDDL_REVISION_1 +.. autodata:: ACE_OBJECT_TYPE_PRESENT +.. autodata:: ACE_INHERITED_OBJECT_TYPE_PRESENT +.. autodata:: OBJECT_INHERIT_ACE +.. autodata:: CONTAINER_INHERIT_ACE +.. autodata:: NO_PROPAGATE_INHERIT_ACE +.. autodata:: INHERIT_ONLY_ACE +.. autodata:: INHERITED_ACE +.. autodata:: VALID_INHERIT_FLAGS +.. autodata:: SUCCESSFUL_ACCESS_ACE_FLAG +.. autodata:: FAILED_ACCESS_ACE_FLAG +.. autodata:: SYSTEM_MANDATORY_LABEL_NO_WRITE_UP +.. autodata:: SYSTEM_MANDATORY_LABEL_NO_READ_UP +.. autodata:: SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP +.. autodata:: SYSTEM_PROCESS_TRUST_LABEL_VALID_MASK +.. autodata:: SYSTEM_PROCESS_TRUST_NOCONSTRAINT_MASK +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_INVALID +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_INT64 +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_UINT64 +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_STRING +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_FQBN +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_SID +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_BOOLEAN +.. autodata:: CLAIM_SECURITY_ATTRIBUTE_TYPE_OCTET_STRING +.. autodata:: SE_GROUP_MANDATORY +.. autodata:: SE_GROUP_ENABLED_BY_DEFAULT +.. autodata:: SE_GROUP_ENABLED +.. autodata:: SE_GROUP_OWNER +.. autodata:: SE_GROUP_USE_FOR_DENY_ONLY +.. autodata:: SE_GROUP_INTEGRITY +.. autodata:: SE_GROUP_INTEGRITY_ENABLED +.. autodata:: SE_GROUP_LOGON_ID +.. autodata:: SE_GROUP_RESOURCE +.. autodata:: SE_GROUP_VALID_ATTRIBUTES +.. autodata:: OWNER_SECURITY_INFORMATION +.. autodata:: GROUP_SECURITY_INFORMATION +.. autodata:: DACL_SECURITY_INFORMATION +.. autodata:: SACL_SECURITY_INFORMATION +.. autodata:: LABEL_SECURITY_INFORMATION +.. autodata:: ATTRIBUTE_SECURITY_INFORMATION +.. autodata:: SCOPE_SECURITY_INFORMATION +.. autodata:: PROCESS_TRUST_LABEL_SECURITY_INFORMATION +.. autodata:: BACKUP_SECURITY_INFORMATION +.. autodata:: PROTECTED_DACL_SECURITY_INFORMATION +.. autodata:: PROTECTED_SACL_SECURITY_INFORMATION +.. autodata:: UNPROTECTED_DACL_SECURITY_INFORMATION +.. autodata:: UNPROTECTED_SACL_SECURITY_INFORMATION +.. autodata:: EVENTLOG_SUCCESS +.. autodata:: EVENTLOG_ERROR_TYPE +.. autodata:: EVENTLOG_WARNING_TYPE +.. autodata:: EVENTLOG_INFORMATION_TYPE +.. autodata:: EVENTLOG_AUDIT_SUCCESS +.. autodata:: EVENTLOG_AUDIT_FAILURE +.. autodata:: EVENTLOG_SEQUENTIAL_READ +.. autodata:: EVENTLOG_SEEK_READ +.. autodata:: EVENTLOG_FORWARDS_READ +.. autodata:: EVENTLOG_BACKWARDS_READ +.. autodata:: EVT_VARIANT_TYPE_MASK +.. autodata:: EVT_VARIANT_TYPE_ARRAY +.. autodata:: ERROR_EVT_INVALID_CHANNEL_PATH +.. autodata:: ERROR_EVT_INVALID_QUERY +.. autodata:: ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND +.. autodata:: ERROR_EVT_EVENT_TEMPLATE_NOT_FOUND +.. autodata:: ERROR_EVT_INVALID_PUBLISHER_NAME +.. autodata:: ERROR_EVT_INVALID_EVENT_DATA +.. autodata:: ERROR_EVT_CHANNEL_NOT_FOUND +.. autodata:: ERROR_EVT_MALFORMED_XML_TEXT +.. autodata:: ERROR_EVT_SUBSCRIPTION_TO_DIRECT_CHANNEL +.. autodata:: ERROR_EVT_CONFIGURATION_ERROR +.. autodata:: ERROR_EVT_QUERY_RESULT_STALE +.. autodata:: ERROR_EVT_QUERY_RESULT_INVALID_POSITION +.. autodata:: ERROR_EVT_NON_VALIDATING_MSXML +.. autodata:: ERROR_EVT_FILTER_ALREADYSCOPED +.. autodata:: ERROR_EVT_FILTER_NOTELTSET +.. autodata:: ERROR_EVT_FILTER_INVARG +.. autodata:: ERROR_EVT_FILTER_INVTEST +.. autodata:: ERROR_EVT_FILTER_INVTYPE +.. autodata:: ERROR_EVT_FILTER_PARSEERR +.. autodata:: ERROR_EVT_FILTER_UNSUPPORTEDOP +.. autodata:: ERROR_EVT_FILTER_UNEXPECTEDTOKEN +.. autodata:: ERROR_EVT_INVALID_OPERATION_OVER_ENABLED_DIRECT_CHANNEL +.. autodata:: ERROR_EVT_INVALID_CHANNEL_PROPERTY_VALUE +.. autodata:: ERROR_EVT_INVALID_PUBLISHER_PROPERTY_VALUE +.. autodata:: ERROR_EVT_CHANNEL_CANNOT_ACTIVATE +.. autodata:: ERROR_EVT_FILTER_TOO_COMPLEX +.. autodata:: ERROR_EVT_MESSAGE_NOT_FOUND +.. autodata:: ERROR_EVT_MESSAGE_ID_NOT_FOUND +.. autodata:: ERROR_EVT_UNRESOLVED_VALUE_INSERT +.. autodata:: ERROR_EVT_UNRESOLVED_PARAMETER_INSERT +.. autodata:: ERROR_EVT_MAX_INSERTS_REACHED +.. autodata:: ERROR_EVT_EVENT_DEFINITION_NOT_FOUND +.. autodata:: ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND +.. autodata:: ERROR_EVT_VERSION_TOO_OLD +.. autodata:: ERROR_EVT_VERSION_TOO_NEW +.. autodata:: ERROR_EVT_CANNOT_OPEN_CHANNEL_OF_QUERY +.. autodata:: ERROR_EVT_PUBLISHER_DISABLED +.. autodata:: ERROR_EVT_FILTER_OUT_OF_RANGE .. autodata:: TOKEN_SOURCE_LENGTH .. autodata:: SID_HASH_SIZE .. autodata:: TOKEN_MANDATORY_POLICY_OFF diff --git a/docs/source/windows.rst b/docs/source/windows.rst index 057bc6f..c48a27a 100644 --- a/docs/source/windows.rst +++ b/docs/source/windows.rst @@ -15,6 +15,7 @@ The submodules that you might use by themself are: * :mod:`windows.generated_def` * :mod:`windows.native_exec` * :mod:`windows.winproxy` + * :mod:`windows.security` * :mod:`windows.wintrust` * :mod:`windows.security` * :mod:`windows.crypto` diff --git a/windows/security.py b/windows/security.py index d6a45df..e310ff5 100644 --- a/windows/security.py +++ b/windows/security.py @@ -535,6 +535,10 @@ class Acl(gdef.ACL): return self.AceCount def __getitem__(self, i): + """Return ``ACE`` nb ``i`` + + :return: :class:`Ace` + """ try: return self.get_ace(i) except WindowsError as e: