Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.authorization.kotlin
import com.pulumi.azurenative.authorization.AccessReviewScheduleDefinitionByIdArgs.builder
import com.pulumi.azurenative.authorization.kotlin.enums.AccessReviewRecurrenceRangeType
import com.pulumi.azurenative.authorization.kotlin.enums.DefaultDecisionType
import com.pulumi.azurenative.authorization.kotlin.inputs.AccessReviewInstanceArgs
import com.pulumi.azurenative.authorization.kotlin.inputs.AccessReviewInstanceArgsBuilder
import com.pulumi.azurenative.authorization.kotlin.inputs.AccessReviewReviewerArgs
import com.pulumi.azurenative.authorization.kotlin.inputs.AccessReviewReviewerArgsBuilder
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Access Review Schedule Definition.
* Azure REST API version: 2021-12-01-preview. Prior API version in Azure Native 1.x: 2021-03-01-preview.
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:authorization:AccessReviewScheduleDefinitionById myresource1 /subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}
* ```
* @property autoApplyDecisionsEnabled Flag to indicate whether auto-apply capability, to automatically change the target object access resource, is enabled. If not enabled, a user must, after the review completes, apply the access review.
* @property backupReviewers This is the collection of backup reviewers.
* @property defaultDecision This specifies the behavior for the autoReview feature when an access review completes.
* @property defaultDecisionEnabled Flag to indicate whether reviewers are required to provide a justification when reviewing access.
* @property descriptionForAdmins The description provided by the access review creator and visible to admins.
* @property descriptionForReviewers The description provided by the access review creator to be shown to reviewers.
* @property displayName The display name for the schedule definition.
* @property endDate The DateTime when the review is scheduled to end. Required if type is endDate
* @property excludeResourceId This is used to indicate the resource id(s) to exclude
* @property excludeRoleDefinitionId This is used to indicate the role definition id(s) to exclude
* @property expandNestedMemberships Flag to indicate whether to expand nested memberships or not.
* @property inactiveDuration Duration users are inactive for. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))
* @property includeAccessBelowResource Flag to indicate whether to expand nested memberships or not.
* @property includeInheritedAccess Flag to indicate whether to expand nested memberships or not.
* @property instanceDurationInDays The duration in days for an instance.
* @property instances This is the collection of instances returned when one does an expand on it.
* @property interval The interval for recurrence. For a quarterly review, the interval is 3 for type : absoluteMonthly.
* @property justificationRequiredOnApproval Flag to indicate whether the reviewer is required to pass justification when recording a decision.
* @property mailNotificationsEnabled Flag to indicate whether sending mails to reviewers and the review creator is enabled.
* @property numberOfOccurrences The number of times to repeat the access review. Required and must be positive if type is numbered.
* @property recommendationLookBackDuration Recommendations for access reviews are calculated by looking back at 30 days of data(w.r.t the start date of the review) by default. However, in some scenarios, customers want to change how far back to look at and want to configure 60 days, 90 days, etc. instead. This setting allows customers to configure this duration. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))
* @property recommendationsEnabled Flag to indicate whether showing recommendations to reviewers is enabled.
* @property reminderNotificationsEnabled Flag to indicate whether sending reminder emails to reviewers are enabled.
* @property reviewers This is the collection of reviewers.
* @property scheduleDefinitionId The id of the access review schedule definition.
* @property startDate The DateTime when the review is scheduled to be start. This could be a date in the future. Required on create.
* @property type The recurrence range type. The possible values are: endDate, noEnd, numbered.
*/
public data class AccessReviewScheduleDefinitionByIdArgs(
public val autoApplyDecisionsEnabled: Output? = null,
public val backupReviewers: Output>? = null,
public val defaultDecision: Output>? = null,
public val defaultDecisionEnabled: Output? = null,
public val descriptionForAdmins: Output? = null,
public val descriptionForReviewers: Output? = null,
public val displayName: Output? = null,
public val endDate: Output? = null,
public val excludeResourceId: Output? = null,
public val excludeRoleDefinitionId: Output? = null,
public val expandNestedMemberships: Output? = null,
public val inactiveDuration: Output? = null,
public val includeAccessBelowResource: Output? = null,
public val includeInheritedAccess: Output? = null,
public val instanceDurationInDays: Output? = null,
public val instances: Output>? = null,
public val interval: Output? = null,
public val justificationRequiredOnApproval: Output? = null,
public val mailNotificationsEnabled: Output? = null,
public val numberOfOccurrences: Output? = null,
public val recommendationLookBackDuration: Output? = null,
public val recommendationsEnabled: Output? = null,
public val reminderNotificationsEnabled: Output? = null,
public val reviewers: Output>? = null,
public val scheduleDefinitionId: Output? = null,
public val startDate: Output? = null,
public val type: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.authorization.AccessReviewScheduleDefinitionByIdArgs = com.pulumi.azurenative.authorization.AccessReviewScheduleDefinitionByIdArgs.builder()
.autoApplyDecisionsEnabled(autoApplyDecisionsEnabled?.applyValue({ args0 -> args0 }))
.backupReviewers(
backupReviewers?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.defaultDecision(
defaultDecision?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.defaultDecisionEnabled(defaultDecisionEnabled?.applyValue({ args0 -> args0 }))
.descriptionForAdmins(descriptionForAdmins?.applyValue({ args0 -> args0 }))
.descriptionForReviewers(descriptionForReviewers?.applyValue({ args0 -> args0 }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.endDate(endDate?.applyValue({ args0 -> args0 }))
.excludeResourceId(excludeResourceId?.applyValue({ args0 -> args0 }))
.excludeRoleDefinitionId(excludeRoleDefinitionId?.applyValue({ args0 -> args0 }))
.expandNestedMemberships(expandNestedMemberships?.applyValue({ args0 -> args0 }))
.inactiveDuration(inactiveDuration?.applyValue({ args0 -> args0 }))
.includeAccessBelowResource(includeAccessBelowResource?.applyValue({ args0 -> args0 }))
.includeInheritedAccess(includeInheritedAccess?.applyValue({ args0 -> args0 }))
.instanceDurationInDays(instanceDurationInDays?.applyValue({ args0 -> args0 }))
.instances(
instances?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.interval(interval?.applyValue({ args0 -> args0 }))
.justificationRequiredOnApproval(justificationRequiredOnApproval?.applyValue({ args0 -> args0 }))
.mailNotificationsEnabled(mailNotificationsEnabled?.applyValue({ args0 -> args0 }))
.numberOfOccurrences(numberOfOccurrences?.applyValue({ args0 -> args0 }))
.recommendationLookBackDuration(recommendationLookBackDuration?.applyValue({ args0 -> args0 }))
.recommendationsEnabled(recommendationsEnabled?.applyValue({ args0 -> args0 }))
.reminderNotificationsEnabled(reminderNotificationsEnabled?.applyValue({ args0 -> args0 }))
.reviewers(
reviewers?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.scheduleDefinitionId(scheduleDefinitionId?.applyValue({ args0 -> args0 }))
.startDate(startDate?.applyValue({ args0 -> args0 }))
.type(
type?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [AccessReviewScheduleDefinitionByIdArgs].
*/
@PulumiTagMarker
public class AccessReviewScheduleDefinitionByIdArgsBuilder internal constructor() {
private var autoApplyDecisionsEnabled: Output? = null
private var backupReviewers: Output>? = null
private var defaultDecision: Output>? = null
private var defaultDecisionEnabled: Output? = null
private var descriptionForAdmins: Output? = null
private var descriptionForReviewers: Output? = null
private var displayName: Output? = null
private var endDate: Output? = null
private var excludeResourceId: Output? = null
private var excludeRoleDefinitionId: Output? = null
private var expandNestedMemberships: Output? = null
private var inactiveDuration: Output? = null
private var includeAccessBelowResource: Output? = null
private var includeInheritedAccess: Output? = null
private var instanceDurationInDays: Output? = null
private var instances: Output>? = null
private var interval: Output? = null
private var justificationRequiredOnApproval: Output? = null
private var mailNotificationsEnabled: Output? = null
private var numberOfOccurrences: Output? = null
private var recommendationLookBackDuration: Output? = null
private var recommendationsEnabled: Output? = null
private var reminderNotificationsEnabled: Output? = null
private var reviewers: Output>? = null
private var scheduleDefinitionId: Output? = null
private var startDate: Output? = null
private var type: Output>? = null
/**
* @param value Flag to indicate whether auto-apply capability, to automatically change the target object access resource, is enabled. If not enabled, a user must, after the review completes, apply the access review.
*/
@JvmName("oqauiabyhxwowhxu")
public suspend fun autoApplyDecisionsEnabled(`value`: Output) {
this.autoApplyDecisionsEnabled = value
}
/**
* @param value This is the collection of backup reviewers.
*/
@JvmName("imtobagacijshthb")
public suspend fun backupReviewers(`value`: Output>) {
this.backupReviewers = value
}
@JvmName("mpifrjfhxnrobbqh")
public suspend fun backupReviewers(vararg values: Output) {
this.backupReviewers = Output.all(values.asList())
}
/**
* @param values This is the collection of backup reviewers.
*/
@JvmName("jmfmtxpuwbmxnpap")
public suspend fun backupReviewers(values: List