|
| 1 | +--- |
| 2 | +page_title: "Resource: okta_campaign" |
| 3 | +description: |- |
| 4 | + Access certification campaigns allow key stakeholders to periodically review users’ access to resources. Okta can then modify resource access, based on stakeholder reviews. Manage campaign tasks with the following campaign APIs. |
| 5 | +--- |
| 6 | + |
| 7 | +# Resource: okta_campaign |
| 8 | + |
| 9 | +Manages Campaign. This resource allows you to create and configure an Okta [Campaign](https://developer.okta.com/docs/api/iga/openapi/governance.api/tag/Campaigns/). |
| 10 | + |
| 11 | +## Example Usage |
| 12 | + |
| 13 | +```terraform |
| 14 | +resource "okta_campaign" "example" { |
| 15 | + name = "example" |
| 16 | +} |
| 17 | +``` |
| 18 | + |
| 19 | +<!-- schema generated by tfplugindocs --> |
| 20 | +## Schema |
| 21 | + |
| 22 | +### Required |
| 23 | + |
| 24 | +- `name` (String) Name of the campaign |
| 25 | +- `remediation_settings` (Block Set) (see [below for nested schema](#nestedblock--remediation_settings)) |
| 26 | +- `resource_settings` (Block Set) (see [below for nested schema](#nestedblock--resource_settings)) |
| 27 | +- `reviewer_settings` (Block Set) (see [below for nested schema](#nestedblock--reviewer_settings)) |
| 28 | +- `schedule_settings` (see [below for nested schema](#nestedblock--schedule_settings)) |
| 29 | +- `notification_settings` (see [below for nested schema](#nestedblock--notification_settings)) |
| 30 | + |
| 31 | +### Optional |
| 32 | + |
| 33 | +- `campaign_tier` (String) Indicates the minimum required SKU to manage the campaign. Enum: "BASIC", "PREMIUM". |
| 34 | +- `campaign_type` (String) Identifies if it is a resource campaign or a user campaign. By default, it is "RESOURCE". Enum: "RESOURCE", "USER". |
| 35 | +- `description` (String) Human readable description. |
| 36 | +- `principal_scope_settings` (Block Set) User scope specific settings (see [below for nested schema](#nestedblock--principal_scope_settings)) |
| 37 | + |
| 38 | +### Read-Only |
| 39 | + |
| 40 | +- `id` (String) Campaign id |
| 41 | + |
| 42 | +<a id="nestedblock--remediation_settings"></a> |
| 43 | +### Nested Schema for `remediation_settings` |
| 44 | +Required: |
| 45 | +- `access_approved` (String) Specifies the action by default if the reviewer approves access. NO_ACTION indicates there is no remediation action and the user retains access. |
| 46 | +- `access_revoked` (String) Specifies the action if the reviewer revokes access. |
| 47 | +- `no_response` (String) Specifies the action if the reviewer doesn't respond to the request or if the campaign is closed before an action is taken. |
| 48 | + |
| 49 | +<a id="nestedblock--resource_settings"></a> |
| 50 | +### Nested Schema for `resource_settings` |
| 51 | +Required: |
| 52 | +- `type` (String) The type of Okta resource. Enum: "APPLICATION", "APPLICATION_AND_GROUP", "GROUP". |
| 53 | + |
| 54 | +Optional: |
| 55 | + |
| 56 | +- `include_admin_roles` (String) Include admin roles. Default `false`. |
| 57 | +- `include_entitlements` (Boolean) Include entitlements for this application. This property is only applicable if resource_type = APPLICATION and Entitlement Management is enabled. |
| 58 | +- `individually_assigned_apps_only` (Boolean) Only include individually assigned apps. This is only applicable if campaign type is USER. |
| 59 | +- `individually_assigned_groups_only` (Boolean) Only include individually assigned groups. This is only applicable if campaign type is USER. |
| 60 | +- `only_include_out_of_policy_entitlements` (Boolean) Only include out-of-policy entitlements. Only applicable if resource_type = APPLICATION and Entitlement Management is enabled. |
| 61 | +- `excluded_resources` (Array) An array of resources that are excluded from the review (see [below for nested schema](#nestedblock--excluded_resources)) |
| 62 | +- `target_resources` (Array) Represents a resource that will be part of Access certifications. If the app is enabled for Access Certifications, it's possible to review entitlements and entitlement bundles (see [below for nested schema](#nestedblock--target_resources)) |
| 63 | + |
| 64 | +<a id="nestedblock--excluded_resources"></a> |
| 65 | +### Nested Schema for `excluded_resources` |
| 66 | +Optional: |
| 67 | +- `resource_id` (String) The ID of the resource to exclude in the campaign. |
| 68 | +- `resource_type` (String) The type of resource to exclude in the campaign. Enum: "APPLICATION", "GROUP" |
| 69 | + |
| 70 | +<a id="nestedblock--target_resources"></a> |
| 71 | +### Nested Schema for `target_resources` |
| 72 | +Required: |
| 73 | +- `resource_id` (String) The resource ID that is being reviewed. |
| 74 | +- `resource_type` (String) The type of Okta resource. Enum: "APPLICATION", "GROUP" |
| 75 | + |
| 76 | +Optional: |
| 77 | +- `include_all_entitlements_and_bundles` (Boolean) Include all entitlements and entitlement bundles for this application. Only applicable if the resource_type = APPLICATION and Entitlement Management is enabled. |
| 78 | +- `entitlement_bundles` (Array) An array of entitlement bundles for this application (see [below for nested schema](#nestedblock--entitlement_bundles)) |
| 79 | +- `entitlements` (Array) An array of entitlements associated with resourceId that should be chosen as target when creating reviews (see [below for nested schema](#nestedblock--entitlements)) |
| 80 | + |
| 81 | +<a id="nestedblock--entitlement_bundles"></a> |
| 82 | +Required: |
| 83 | +- `id` (String) The ID of the entitlement bundle. |
| 84 | + |
| 85 | +<a id="nestedblock--entitlements"></a> |
| 86 | +Required: |
| 87 | +- `id` (String) The ID of the entitlement. |
| 88 | + |
| 89 | +Optional |
| 90 | +- `include_all_values` (Boolean) Whether to include all entitlement values. If false we must provide the values property. |
| 91 | +- `values` (Array) An array of entitlements associated with resourceId that should be chosen as target when creating reviews (see [below for nested schema](#nestedblock--values)) |
| 92 | + |
| 93 | +<a id="nestedblock--values"></a> |
| 94 | +Required: |
| 95 | +- `id` (String) The entitlement value id. |
| 96 | + |
| 97 | +<a id="nestedblock--reviewer_settings"></a> |
| 98 | +### Nested Schema for `reviewer_settings` |
| 99 | +Required: |
| 100 | +- `type` (String) Identifies the kind of reviewer for Access Certification. Enum: "GROUP", "MULTI_LEVEL", "RESOURCE_OWNER" |
| 101 | + |
| 102 | +Optional: |
| 103 | +- `bulk_decision_disabled` (Boolean) When approving or revoking review items, bulk actions are disabled if true. |
| 104 | +- `fallback_reviewer_id` (String) The ID of the fallback reviewer. Required when the type=`REVIEWER_EXPRESSION` or type=`RESOURCE_OWNER` |
| 105 | +- `justification_required` (Boolean) When approving or revoking review items, a justification is required if true. |
| 106 | +- `reassignment_disabled` (Boolean) Reassignment is disabled for reviewers if true. |
| 107 | +- `self_review_disabled` (Boolean) This property is required to be true for resource-centric campaigns when the Okta Admin Console is one of the resources. |
| 108 | +- `reviewer_group_id` (String) The ID of the reviewer group to which the reviewer is assigned. |
| 109 | +- `reviewer_id` (String) The ID of an Okta user who will be assigned as a reviewer. |
| 110 | +- `reviewer_scope_expression` (String) This property is required when type=`USER`. |
| 111 | +- `reviewer_levels` (Array) Identifies the kind of reviewer for Access Certification (see [below for nested schema](#nestedblock--reviewer_levels)) |
| 112 | + |
| 113 | +<a id="nestedblock--reviewer_levels"></a> |
| 114 | +### Nested Schema for `reviewer_levels` |
| 115 | +Required: |
| 116 | +- `type` (String) Identifies the kind of reviewer. Enum: "GROUP", "RESOURCE_OWNER", "REVIEWER_EXPRESSION", "USER" |
| 117 | + |
| 118 | +Optional: |
| 119 | +- `fallback_reviewer_id` (String) Required when the type=`REVIEWER_EXPRESSION` or type=`RESOURCE_OWNER`. |
| 120 | +- `reviewer_group_id` (String) The ID of the reviewer to which the reviewer is assigned.This property is required when type=`USER`. |
| 121 | +- `reviewer_scope_expression` (String) This property is required when type=`REVIEWER_EXPRESSION`. |
| 122 | +- `self_review_disabled` (Boolean) This property is used to prevent self review. |
| 123 | +- `start_review` (Array) The rules for which the reviews can move to that level.Max Length 2 (see [below for nested schema](#nestedblock--start_review)) |
| 124 | + |
| 125 | + |
| 126 | +<a id="nestedblock--reviewer_levels"></a> |
| 127 | +### Nested Schema for `start_review` |
| 128 | +Optional: |
| 129 | +- `on_day` (int) The day of the campaign when the review starts. 0 means the first day of the campaign. |
| 130 | +- `when` (String) The condition for which, the lower level reviews will move to that level for further review. |
| 131 | + |
| 132 | +<a id="nestedblock--schedule_settings"></a> |
| 133 | +### Nested Schema for `schedule_settings` |
| 134 | +Required: |
| 135 | +- `start_date` (String) The date on which the campaign is supposed to start. Accepts date in ISO 8601 format. |
| 136 | +- `duration_in_days` (int) The duration (in days) that the campaign is active. |
| 137 | +- `time_zone` (String) The time zone in which the campaign is active. |
| 138 | +- `type` (String) The type of campaign being scheduled.Enum: "ONE_OFF", "RECURRING" |
| 139 | + |
| 140 | +Optional: |
| 141 | +- `recurrence` (Array) Scheduler specific settings (see [below for nested schema](#nestedblock--recurrence)) |
| 142 | + |
| 143 | + |
| 144 | +<a id="nestedblock--recurrence"></a> |
| 145 | +### Nested Schema for `recurrence` |
| 146 | +Required: |
| 147 | +- `interval` (String) Recurrence interval specified according to ISO8061 notation for durations. |
| 148 | + |
| 149 | +Optional: |
| 150 | +- `ends` (String) Specifies when the recurring schedule can have an end. |
| 151 | +- `repeat_on_type` (String) Specifies when the recurring schedule can have an end. Enum: "LAST_WEEKDAY_AS_START_DATE", "SAME_DAY_AS_START_DATE", "SAME_WEEKDAY_AS_START_DATE" |
| 152 | + |
| 153 | +<a id="nestedblock--notification_settings"></a> |
| 154 | +### Nested Schema for `notification_settings` |
| 155 | +Required: |
| 156 | +- `notify_reviewer_at_campaign_end` (Boolean) To indicate whether a notification should be sent to the reviewers when campaign has come to an end. |
| 157 | +- `notify_reviewer_during_midpoint_of_review` (Boolean) To indicate whether a notification should be sent to the reviewer during the midpoint of the review process. |
| 158 | +- `notify_reviewer_when_overdue` (Boolean) To indicate whether a notification should be sent to the reviewer when the review is overdue. |
| 159 | +- `notify_reviewer_when_review_assigned` (Boolean) To indicate whether a notification should be sent to the reviewer when actionable reviews are assigned. |
| 160 | +- `notify_review_period_end` (Boolean) To indicate whether a notification should be sent to the reviewer when a given reviewer level period is about to end. |
| 161 | + |
| 162 | +Optional: |
| 163 | +- `reminders_reviewer_before_campaign_close_in_secs` (Array) Specifies times (in seconds) to send reminders to reviewers before the campaign closes. Max 3 values. Example: [86400, 172800, 604800] |
| 164 | + |
| 165 | +<a id="nestedblock--principal_scope_settings"></a> |
| 166 | +### Nested Schema for `principal_scope_settings` |
| 167 | +Required: |
| 168 | +- `type` (String) Specifies the type for principal_scope_settings. |
| 169 | + |
| 170 | +Optional: |
| 171 | +- `excluded_user_ids` (Array) An array of Okta user IDs excluded from access certification or the campaign. This field is optional. A maximum of 50 users can be specified in the array. |
| 172 | +- `group_ids` (Array) An array of Okta group IDs included from access certification or the campaign. userIds, groupIds or userScopeExpression is required if campaign type is USER. A maximum of 5 groups can be specified in the array. |
| 173 | +- `include_only_active_users` (Boolean) If set to true, only active Okta users are included in the campaign. |
| 174 | +- `only_include_users_with_sod_conflicts` (Boolean) If set to true, only includes users that have at least one SOD conflict that was caused due to entitlement(s) within Campaign scope. |
| 175 | +- `user_ids` (Array) An array of Okta user IDs included from access certification or the campaign. userIds, groupIds or userScopeExpression is required if campaign type is USER. A maximum of 100 users can be specified in the array. |
| 176 | +- `user_scope_expression` (String) The Okta expression language user expression on the resourceSettings to include users in the campaign. |
| 177 | +- `predefined_inactive_users_scope` (Array) (see [below for nested schema](#nestedblock--predefined_inactive_users_scope)) |
| 178 | + |
| 179 | +<a id="nestedblock--predefined_inactive_users_scope"></a> |
| 180 | +### Nested Schema for `predefined_inactive_users_scope` |
| 181 | +Optional: |
| 182 | +`inactive_days` (int) The duration the users have not used single sign on (SSO) to access their account within the specific time frame. Minimum 30 days and maximum 365 days are supported. Minimum 30 , maximum 365. |
| 183 | + |
| 184 | + |
| 185 | +## Import |
| 186 | + |
| 187 | +Import is supported using the following syntax: |
| 188 | + |
| 189 | +```shell |
| 190 | +terraform import okta_campaign.example <campaign_id> |
| 191 | +``` |
0 commit comments