assets_guardian.core.domain.models.identity

Classes

Identity(*,Β source,Β external_id,Β ...[,Β ...])

Normalized representation of an identity from an external source.

IdentityState(*values)

IdentityType(*values)

class assets_guardian.core.domain.models.identity.Identity(*, source: str, external_id: str, identity_type: IdentityType, name: str, email: str | None = None, username: str | None = None, first_name: str | None = None, last_name: str | None = None, company: str | None = None, description: str | None = None, state: IdentityState | None = None, mfa_enabled: bool | None = None, is_privileged: bool | None = None, is_external: bool | None = None, created_at: datetime | None = None, created_by: str | None = None, last_activity_at: datetime | None = None, last_sign_in_at: datetime | None = None, last_sign_in_ip: IPv4Address | IPv6Address | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, access: list[Access] | None = None)[source]

Bases: object

Normalized representation of an identity from an external source.

Variables:
  • source (str) – Source name (e.g., gitlab, microsoft365, dolibarr, etc.).

  • external_id (str) – Unique identifier of the identity within the source.

  • identity_type (assets_guardian.core.domain.models.identity.IdentityType) – Type of identity (human, non-human, generic, etc.).

  • email (str | None) – Email address associated with the identity in the source.

  • username (str | None) – Username or handle of the identity in the source.

  • name (str) – Full or display name of the identity in the source.

  • first_name (str | None) – First name of the identity in the source.

  • last_name (str | None) – Last name of the identity in the source.

  • company (str | None) – Company or organization associated with the identity in the source.

  • description (str | None) – Description of the identity in the source (job title, role, etc.).

  • state (assets_guardian.core.domain.models.identity.IdentityState | None) – State of the identity in the source (active, inactive, blocked, etc.).

  • mfa_enabled (bool | None) – Flag indicating if MFA is enabled for the identity in the source.

  • is_privileged (bool | None) – Flag indicating if the identity has privileged access in the source.

  • is_external (bool | None) – Flag indicating if the identity is external to the organization.

  • created_at (datetime.datetime | None) – Creation date of the identity in the source.

  • created_by (str | None) – Identifier of the identity’s creator in the source.

  • last_activity_at (datetime.datetime | None) – Last activity date of the identity in the source.

  • last_sign_in_at (datetime.datetime | None) – Last sign-in date of the identity in the source.

  • last_sign_in_ip (ipaddress.IPv4Address | ipaddress.IPv6Address | None) – IP address of the last sign-in.

  • comments (str | None) – Internal comments or notes for Assets Guardian.

  • metadata (dict[str, Any] | None) – Custom arbitrary metadata dict.

class assets_guardian.core.domain.models.identity.IdentityState(*values)[source]

Bases: StrEnum

class assets_guardian.core.domain.models.identity.IdentityType(*values)[source]

Bases: StrEnum