Resource Object Types

Last modified 13 Jan 2025 12:10 +01:00

By resource object we understand any object on the resource that is visible to midPoint. These are usually account objects but may also be a wide variety of group types, resource-specific low-level roles, privileges, organizational units, configuration objects, etc. The handling of each type of these objects has to be carefully defined.

Kind, Intent and Object Class

MidPoint identifies each type of resource object by using a (kind, intent) tuple. I.e. each resource object has a kind and an intent. Kind defines what the object is, intent specified how the object behaves.

On the other hand, Object Class is a type of the object how the resource understands it. It is therefore a "technical" type of the resource object. Object classes are presented to midPoint by the connector. But midPoint usually does not know what to do with a specific object class, e.g. an LDAP objectclass inetOrgPerson. Therefore, midPoint sorts out the object class to kind and intent as specified above. MidPoint then known quite well what to do with (e.g.) default account.

See Kind, Intent and ObjectClass page for more details.

The Definition

Object type definition specifies how a given object type on the resource should look like and how it should behave. The definition is identified by the (kind, intent) tuple. E.g. there is usually at least one definition for default account object type (kind account, intent default). The definition specifies what Object Class to use for such objects, how to handle the attributes, how to determine attribute values, etc.

The resource object definition specified using the objectType element in schemaHandling section.

Identification and General Properties

The following items identify the object type and provide its general description.

Item name Description Default Further information

kind

Kind of the resource object.

account

intent

Intent of the resource object.

default

displayName

Display name of the resource object type. This human-readable string is used in GUI and other tools when displaying information about resource objects.

description

Free-form textual description of the object type.

documentation

Technical documentation of the object type.

lifecycleState

Lifecycle state of the object type definition: whether it is only a draft, or proposed, active, deprecated, archived, and so on.

active

Configuration Item Lifecycle and System Configurations

default

An indication whether the resource object type is the default type for the given object kind and for the given object class on the resource.

false

Defaults

abstract

These are used to define object type inheritance.

Resource and Object Type Inheritance

super

Frequently Used Type-Level Configuration Features

The following are the most-often used configuration items that are relevant for the whole object type.

Item name Description Further information

delineation

Delineation of the resource object type. MidPoint must know what resource objects belong to the object type and what do not. The most typical (and obligatory) criterion is the object class. Other criteria, e.g., a filter based on attributes, can be used as well.

Resource Object Type Delineation

focus

Focus objects (users, roles, orgs, and so on) corresponding to given resource object type. If not specified, UserType is assumed.

Focus Objects

marking

Drives automatic marking of shadows, e.g., as protected objects. Such objects will never be touched by midPoint. MidPoint will not synchronize them, will not reconcile them and will not modify them. This is usually used to protect system accounts such as root or administrator.

Protected Accounts

correlation

Specifies how to locate an owner (user, role, org, …​) of the resource object (account, role, org. unit, …​).

Synchronization

synchronization

Specifies how midPoint should behave in specific situations, e.g., when it encounters a newly created or recently deleted account.

Item-Level Configuration

The following configuration items are relevant to individual parts of a resource object of given type.

Item name Description Further information

attribute

Attribute definitions that describe the handling of attributes that form a particular object type. The administrator can define a specific data and behavior for each attribute.

Attribute Definitions

credentials

How credentials (typically the password) are handled for this object type.

Credentials Handling

activation

Defines how the activation-related information, like the administrative status (enabled/disabled), time validity (from/to), or even the mere existence of the resource objects should be handled.

Resource Schema Handling: Activation

behavior

Definition for different behaviors are handled for the resource. Defines how the last login timestamp synchronization is handled for the resource. (If it has the corresponding capability.)

Behavior Handling

Other Type-Level Configuration Features

Item name Description Further information

multiplicity

Used when there are multiple objects of given type for a single focus, e.g., a user.

Multiaccounts

iteration

Defines the parameters of iterative cycles. Such cycles are used e.g. when determining a unique identifier values from non-unique inputs. E.g. a iteration cycle may be used to try account identifiers jack2, jack3 and jack4 in case there is already an account with identifier jack.

dependency

Specification of dependencies of this object type on other type or types.

Provisioning Dependencies

volatility

Specification of the volatility of this object type. (Note that the volatility can be specified also at the attribute level.)

Volatile Attributes and Objects

defaultOperationPolicy

Default operation policy for those operations that do not have their behavior specified explicitly via object marks. This is used to restrict some types of operations for given object type, like making it managed by midPoint solely, or the other way, managed from the resource only.

Managed and Unmanaged Shadows

securityPolicyRef

Security policy for this object type. Used to define the required complexity of passwords (when generating or checking them) as well as the storage configuration for cached passwords.

Security Policy Configuration

configuredCapabilities

Capabilities specific to this object type.

Resource Capabilities

caching

Caching configuration specific to this object type.

Shadow Caching

projection

Specification of the way how projections are handled on the resource. This defines the ways how assignments are enforced and so on.

Projection Policy

auxiliaryObjectClassMappings

Inbound mappings and tolerance setting for auxiliary object class information.

The schema handling is additive to a resource schema definitions. This means that there is no need to define all the attributes from the object class in the schema handling section. The attributes that are defined in the object class and are not mentioned in schema handling are taken from the object class definition without any change.
Was this page helpful?
YES NO
Thanks for your feedback