# ScriptExecutionPolicyActionType (Complex Type)

### Namespace: http://midpoint.evolveum.com/xml/ns/public/common/common-3

Supertype: PolicyActionType
TODO

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
name | property string | [0,1] | Name for the action.
description | property string | [0,1] | Free-form description (e.
documentation | property string | [0,1] | Technical documentation for a particular object or construct.
condition | property ExpressionType | [0,1] | When should this action be applied? Not supported for policy rules targeted at activities.
object | container ScriptExecutionObjectType | [0,1] | Object(s) on which the script should be executed.
executeScript | property ExecuteScriptType | [0,-1] |
asynchronousExecution | container AsynchronousScriptExecutionType | [0,1] | Options for asynchronous script execution.
runAsRef | reference ObjectReferenceType | [0,1] | Reference to the user whose identity will be used to execute the script, including task submission in case of asynchronous execution.
privileges | container ExecutionPrivilegesSpecificationType | [0,1] | Privileges and identity that will be used to execute the script.

- ### Items

  - #### name

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Name for the action. It is used for logging and other diagnostic purposes.

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Free-form description (e.g. comments about the action purpose)

  - #### documentation

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Technical documentation for a particular object or construct.

    The purpose of this element is to document system configuration and behavior. The documentation will not be presented to end users. In fact, it will probably not be presented at all in midPoint user interface. This documentation element is supposed to be a part of the technical documentation of midPoint deployment. The tools than generate deployment configuration will look for these elements and combine them to compiled documentation document.

    AsciiDoc formatting is assumed for this element. Any leading or trailing whitespace is skipped. Indentation equivalent to he indentation of the first non-blank line of text is also skipped.

  - #### condition

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    When should this action be applied? Not supported for policy rules targeted at activities. (TODO specify more precisely)

  - #### object

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Object(s) on which the script should be executed. (If not specified, current focus is assumed.)

  - #### executeScript

    Flags: RAM,runtime

    Multiplicity: [0,-1]

    Display order:

  - #### asynchronousExecution

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Options for asynchronous script execution.

  - #### runAsRef

    Flags: RAM

    Multiplicity: [0,1]

    Display order:

    Reference to the user whose identity will be used to execute the script, including task submission in case of asynchronous execution. (Note that search for relevant objects is currently done directly via repository, so it is not covered by authorizations.)

    The whole process will use authorizations that this user has. If the script triggers any change then the change will be audited under the identity of this user.

    If no user is specified then the identity of currently logged-in user or the owner of the task will be used.

    DEPRECATED: use "privileges" instead. Cannot be present when "privileges" are used.

  - #### privileges

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Privileges and identity that will be used to execute the script. (Note that search for relevant objects is currently done directly via repository, so it is not covered by authorizations.) For asynchronous executions, the identity stemming from "runAsRef" property of this item will be used as the respective task owner.