:py:mod:`dissect.target.plugins.general.users` ============================================== .. py:module:: dissect.target.plugins.general.users Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: dissect.target.plugins.general.users.UserDetails dissect.target.plugins.general.users.UsersPlugin Attributes ~~~~~~~~~~ .. autoapisummary:: dissect.target.plugins.general.users.UserRecord .. py:data:: UserRecord .. py:class:: UserDetails Bases: :py:obj:`NamedTuple` .. py:attribute:: user :type: UserRecord .. py:attribute:: home_path :type: dissect.target.helpers.fsutil.TargetPath | None .. py:class:: UsersPlugin(target: dissect.target.target.Target) Bases: :py:obj:`dissect.target.plugin.InternalPlugin` Internal plugin that provides helper functions for retrieving user details. .. py:attribute:: __namespace__ :value: 'user_details' Defines the plugin namespace. .. py:attribute:: find .. py:method:: check_compatible() -> None Perform a compatibility check with the target. This function should return ``None`` if the plugin is compatible with the current target (``self.target``). For example, check if a certain file exists. Otherwise it should raise an :class:`UnsupportedPluginError`. :raises UnsupportedPluginError: If the plugin could not be loaded. .. py:method:: get(user: UserRecord) -> UserDetails Return additional details about the user. .. py:method:: all() -> collections.abc.Iterator[UserDetails] Return :class:`UserDetails` objects for all users found. .. py:method:: all_with_home() -> collections.abc.Iterator[UserDetails] Return :class:`UserDetails` objects for users that have existing directory set as home directory. .. py:property:: all_home_paths :type: collections.abc.Iterator[dissect.target.helpers.fsutil.TargetPath] Return all home directories of users, including miscellaneous user directories that may not be linked to discovered local users.