Determining attestation policy owners
The PW approval procedure finds which owners are attestors of the listed attestation policy. The approval procedure can therefore be used to attest any object. It is used to perform an additional stage in approval processes. In doing so, the attestation policy owners have the opportunity to review the details of the attestation run. For more information, see Phases of attestation.
NOTE: Only one approval step can be defined with the CD approval procedure per approval level.
If you want to make attestation dependent on specific conditions, use the CD approval procedure. This procedure does not determine an attestor. One Identity Manager makes the decision depending on the condition that is formulated in the approval step.
You can use the procedure for any attestation base objects. You create a condition in the approval step. If the condition returns a result, the approval step is approved through One Identity Manager. If the condition does not return a result, the approval step is denied by One Identity Manager. If there are no further approval steps, the approval procedure is either finally granted or denied.
To enter a condition for the CD approval procedure
Edit the approval step properties.
For more information, see Editing approval levels.
In the Condition input field, enter a valid WHERE clause for database queries. You can enter the SQL query directly or with a wizard.
Example of a simple approval workflow with the CD approval procedure:
External employees should be attestation by their managers. If no manager is assigned, the members of a designated application role must attest the employees.
You can find all external employees, who have managers assigned to them by using the CD approval procedure and the following condition.
(SELECT 1 FROM
(SELECT xobjectkey FROM Person WHERE (IsExternal = 1)
(SELECT 1 FROM
(SELECT UID_Person FROM Person WHERE 1 = 1) as X
WHERE X.UID_Person = Person.UID_PersonHead) )) as X
WHERE X.xobjectkey = AttestationCase.ObjectKeyBase)
If the condition is fulfilled, the external employee's manager can attest the employee. To do this, add an approval step in the positive approval path with the CM approval procedure.
If the condition is not fulfilled, the employee is attested by the member of a designated application role. To do this, add an approval step in the negative approval path with the OR approval procedure and assign the application role.
Approvals to be made externally
Use external approvals (EX approval procedure) if an attestation needs to be approved as soon as a defined event from outside One Identity Manager takes place. You can also use this procedure to allow any number of objects to be attested by employees who do not have access to One Identity Manager.
Specify an event in the approval step that triggers an external approval. The event triggers a process that initiates the external approval for the attestation case and evaluates the result of the approval decision. The approval process waits for the external decision to be passed to One Identity Manager. Define the subsequent approval steps depending on the result of the external approval.
To use an approval procedure
In the Designer, define your own processes that:
Triggers an external approval.
Analyzes the results of the external approval.
Grants or denies approval in the subsequent external approval step in One Identity Manager.
Defines an event that starts the process for external approval. Enter the result in Result in the approval step.
If the external event occurs, the approval step status in One Identity Manager must be changed. Use the CallMethod process task with the MakeDecision method for this. Pass the following parameters to the process task:
MethodName: Value = "MakeDecision"
ObjectType: Value = "AttestationCase"
Param1: Value = "sa"
Param2: Value = <approval> ("true" = granted; "false" = denied)
Param3: Value = <reason for approval decision>
Param4: Value = <standard reason>
Param5: Value = <number approval steps> (PWODecisionStep.SubLevelNumber)
WhereClause: Value = "UID_AttestationCase ='"& $UID_AttestationCase$ &"'"
Use these parameters to specify which attestation case is to be approved by external approval (WhereClause). Param1 specifies the attestor. The attestor is always the sa system user. Param2 passes down the approval decision. If the attestation was granted, a value of True must be returned. If the attestation was denied, a value of False must be returned. Use Param3 to pass a reason text for the approval decision; use Param4 to pass a predefined standard reason. If more than one external approval steps have been defined in an approval level, use Param5 to pass the approval step count. This ensures the approval is aligned with the correct approval step.
All compliance rules should be checked and attested by an external assessor. The attestation object data should be made available as a PDF on an external share. The assessor should save the result of the attestation in a text file on the external share. Use this approval procedure to make external approvals and define:
For more information about creating processes, see the One Identity Manager Configuration Guide. For more information about setting up schedules, see the One Identity Manager Operational Guide.
Detailed information about this topic
Waiting for further approval
NOTE: Only one approval step can be defined with the WC approval procedure per approval level.
If you want to ensure that a specific data state exists in One Identity Manager before an attestation case is finally approved, then use the WC approval procedure. Use a condition to specify which prerequisites have to be fulfilled so that attestation can take place. The condition is evaluated as a function call, which must accept the attestation case UID as a parameter (AttestationCase.UID_AttestationCase). You use this UID to reference the attestation object. The function must define three return values as integer values. One of the following actions is carried out depending on the function’s return value.
Table 29: Return value for deferred approval
Return value > 0
The condition is fulfilled. Deferred approval has completed successfully. The next approval step (in case of success) is carried out.
Return value = 0
The condition is not yet fulfilled. Approval is rolled back and is retested the next time DBQueue Processor runs.
Return value < 0
The condition is not fulfilled. Deferred approval has failed. The next approval step (in case of failure) is carried out.
To use an approval procedure
Create a database function which tests the condition for the attestation.
Create an approval step with the WC approval procedure. Enter the function call in Condition.
Syntax: dbo.<function name>
Specify an approval step in the case of success. Use the approval procedure with which One Identity Manager can determine the attestors.
Specify an approval step in the case of failure.