Skip to content

Commit 73da9a5

Browse files
committed
adds documentation for campaigns, entitlements and acc test and other resoruce and data sources
1 parent 1ff0e75 commit 73da9a5

53 files changed

Lines changed: 3009 additions & 1219 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<img src="https://www.okta.com/sites/default/files/Dev_Logo-03_Large.png" alt="OKTA logo" title="OKTA" height="50" />
1414
</a>
1515

16+
1617
# Terraform Provider for Okta
1718

1819
The Terraform Okta provider is a plugin for Terraform that allows for the full lifecycle management of Okta resources.

docs/data-sources/campaign.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
page_title: "Data Source: okta_campaign"
3+
description: |-
4+
Get the campaign belonging to an Okta organization.
5+
---
6+
7+
# Data Source: okta_campaign
8+
9+
Get the campaign belonging to an Okta organization.
10+
11+
## Example Usage
12+
13+
```terraform
14+
data "okta_campaign" "test" {
15+
}
16+
```
17+
18+
<!-- schema generated by tfplugindocs -->
19+
## Schema
20+
21+
### Read-Only
22+
- `id` (String) The ID of this resource.
23+
24+
<a id="nestedatt--brands"></a>
25+
### Nested Schema for `campaign`
26+
27+
Read-Only:
28+
29+
- `name` (String)
30+
- `created` (String)
31+
- `created_by` (String)
32+
- `last_updated` (String)
33+
- `last_updated_by` (String)
34+
- `status` (String)
35+
- `campaign_type` (String)
36+
- `description` (String)
37+
- `recurring_campaign_id`(String)
38+
- `remediation_settings` (Block Set) (Same structure as in the resource schema)
39+
- `resource_settings` (Block Set) (Same structure as in the resource schema))
40+
- `reviewer_settings` (Block Set) (Same structure as in the resource schema))
41+
- `schedule_settings` (Same structure as in the resource schema))
42+
- `notification_settings` (Same structure as in the resource schema))

docs/data-sources/entitlement.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
---
2+
page_title: "Data Source: okta_entitlement"
3+
description: |-
4+
Get the entitlement belonging to an Okta organization.
5+
---
6+
7+
# Data Source: okta_entitlement
8+
9+
Get the entitlement belonging to an Okta organization.
10+
11+
## Example Usage
12+
13+
```terraform
14+
data "okta_entitlement" "test" {
15+
}
16+
```
17+
18+
<!-- schema generated by tfplugindocs -->
19+
## Schema
20+
21+
### Read-Only
22+
- `id` (String) The ID of this resource.
23+
24+
<a id="nestedatt--brands"></a>
25+
### Nested Schema for `entitlement`
26+
27+
Read-Only
28+
29+
- `data_type` (String)
30+
- `external_value` (String)
31+
- `multi_value` (Boolean)
32+
- `name` (String)
33+
- `parent_resource_orn` (String)
34+
- `parent` (Same structure as in the resource schema)
35+
- `values`(Array) (see [below for nested schema](#nestedblock----values))
36+
37+
<a id="nestedblock--values"></a>
38+
### Nested Schema for `values`
39+
Read-Only:
40+
- `id` (String) The id of an entitlement value.
41+
- `name` (String) The display name for an entitlement value.
42+
- `description` (String) The description of an entitlement value.
43+
- `external_id` (String) The ID of an entitlement property value in the downstream application.
44+
- `external_value` (String) The value of an entitlement property value.

docs/resources/campaign.md

Lines changed: 191 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,191 @@
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+
```

docs/resources/entitlement.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
---
2+
page_title: "Resource: okta_entitlement"
3+
description: |-
4+
Entitlement allows you to manage entitlements and their values. An entitlement is a permission that allows users to take specific actions within a resource, such as an app.
5+
---
6+
7+
# Resource: okta_entitlement
8+
9+
Manages Entitlement. This resource allows you to create and configure an Okta [Entitlement](https://developer.okta.com/docs/api/iga/openapi/governance.api/tag/Entitlements/).
10+
11+
## Example Usage
12+
13+
```terraform
14+
resource "okta_entitlement" "example" {
15+
name = "example"
16+
}
17+
```
18+
19+
<!-- schema generated by tfplugindocs -->
20+
## Schema
21+
22+
### Required
23+
- `data_type` (String) The data type of the entitlement property. If the entitlement property is multivalued, the data type is replaced with an array. Enum: "array", "string".
24+
- `external_value` (String) The value of an entitlement property.
25+
- `multi_value` (Boolean) The property that determines if the entitlement property can hold multiple values.
26+
- `name` (String) The display name for an entitlement property.
27+
- `parent` (Object) Representation of a resource (see [below for nested schema](#nestedblock--parent))
28+
- `values` (List) (see [below for nested schema](#nestedblock--values))
29+
30+
### Optional
31+
32+
- `description` (String) The description of an entitlement property.
33+
34+
<a id="nestedblock--parent"></a>
35+
### Nested Schema for `parent`
36+
### Required
37+
- `external_id` (String) The Okta app ID of the resource.
38+
- `type` (String) The type of resource.
39+
40+
<a id="nestedblock--values"></a>
41+
### Nested Schema for `values`
42+
### Required
43+
- `external_value` (String) The value of an entitlement property value.
44+
- `name` (String) The display name for an entitlement value.
45+
46+
### Optional
47+
48+
- `description` (String) The description of an entitlement value.
49+
50+
51+
## Import
52+
53+
Import is supported using the following syntax:
54+
55+
```shell
56+
terraform import okta_entitlement.example <entitlement_id>
57+
```
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
data "okta_campaign" test{
2+
3+
}

0 commit comments

Comments
 (0)