Class: MicrosoftGraph::Models::AccessReviewScheduleSettings

Inherits:
Object
  • Object
show all
Includes:
MicrosoftKiotaAbstractions::AdditionalDataHolder, MicrosoftKiotaAbstractions::Parsable
Defined in:
lib/models/access_review_schedule_settings.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeObject

Instantiates a new accessReviewScheduleSettings and sets the default values.



103
104
105
# File 'lib/models/access_review_schedule_settings.rb', line 103

def initialize()
    @additional_data = Hash.new
end

Class Method Details

.create_from_discriminator_value(parse_node) ⇒ Object

Creates a new instance of the appropriate class based on discriminator value

Parameters:

  • The parse node to use to read the discriminator value and create the object

Returns:

  • a access_review_schedule_settings

Raises:



111
112
113
114
# File 'lib/models/access_review_schedule_settings.rb', line 111

def self.create_from_discriminator_value(parse_node)
    raise StandardError, 'parse_node cannot be null' if parse_node.nil?
    return AccessReviewScheduleSettings.new
end

Instance Method Details

#additional_dataObject

Gets the additionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.

Returns:

  • a i_dictionary



58
59
60
# File 'lib/models/access_review_schedule_settings.rb', line 58

def additional_data
    return @additional_data
end

#additional_data=(value) ⇒ Object

Sets the additionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.

Parameters:

  • Value to set for the additionalData property.

Returns:

  • a void



66
67
68
# File 'lib/models/access_review_schedule_settings.rb', line 66

def additional_data=(value)
    @additional_data = value
end

#apply_actionsObject

Gets the applyActions property value. Optional field. Describes the actions to take once a review is complete. There are two types that are currently supported: removeAccessApplyAction (default) and disableAndDeleteUserApplyAction. Field only needs to be specified in the case of disableAndDeleteUserApplyAction.

Returns:

  • a access_review_apply_action



73
74
75
# File 'lib/models/access_review_schedule_settings.rb', line 73

def apply_actions
    return @apply_actions
end

#apply_actions=(value) ⇒ Object

Sets the applyActions property value. Optional field. Describes the actions to take once a review is complete. There are two types that are currently supported: removeAccessApplyAction (default) and disableAndDeleteUserApplyAction. Field only needs to be specified in the case of disableAndDeleteUserApplyAction.

Parameters:

  • Value to set for the applyActions property.

Returns:

  • a void



81
82
83
# File 'lib/models/access_review_schedule_settings.rb', line 81

def apply_actions=(value)
    @apply_actions = value
end

#auto_apply_decisions_enabledObject

Gets the autoApplyDecisionsEnabled property value. Indicates whether decisions are automatically applied. When set to false, an admin must apply the decisions manually once the reviewer completes the access review. When set to true, decisions are applied automatically after the access review instance duration ends, whether or not the reviewers have responded. Default value is false. CAUTION: If both autoApplyDecisionsEnabled and defaultDecisionEnabled are true, all access for the principals to the resource risks being revoked if the reviewers fail to respond.

Returns:

  • a boolean



88
89
90
# File 'lib/models/access_review_schedule_settings.rb', line 88

def auto_apply_decisions_enabled
    return @auto_apply_decisions_enabled
end

#auto_apply_decisions_enabled=(value) ⇒ Object

Sets the autoApplyDecisionsEnabled property value. Indicates whether decisions are automatically applied. When set to false, an admin must apply the decisions manually once the reviewer completes the access review. When set to true, decisions are applied automatically after the access review instance duration ends, whether or not the reviewers have responded. Default value is false. CAUTION: If both autoApplyDecisionsEnabled and defaultDecisionEnabled are true, all access for the principals to the resource risks being revoked if the reviewers fail to respond.

Parameters:

  • Value to set for the autoApplyDecisionsEnabled property.

Returns:

  • a void



96
97
98
# File 'lib/models/access_review_schedule_settings.rb', line 96

def auto_apply_decisions_enabled=(value)
    @auto_apply_decisions_enabled = value
end

#decision_histories_for_reviewers_enabledObject

Gets the decisionHistoriesForReviewersEnabled property value. Indicates whether decisions on previous access review stages are available for reviewers on an accessReviewInstance with multiple subsequent stages. If not provided, the default is disabled (false).

Returns:

  • a boolean



119
120
121
# File 'lib/models/access_review_schedule_settings.rb', line 119

def decision_histories_for_reviewers_enabled
    return @decision_histories_for_reviewers_enabled
end

#decision_histories_for_reviewers_enabled=(value) ⇒ Object

Sets the decisionHistoriesForReviewersEnabled property value. Indicates whether decisions on previous access review stages are available for reviewers on an accessReviewInstance with multiple subsequent stages. If not provided, the default is disabled (false).

Parameters:

  • Value to set for the decisionHistoriesForReviewersEnabled property.

Returns:

  • a void



127
128
129
# File 'lib/models/access_review_schedule_settings.rb', line 127

def decision_histories_for_reviewers_enabled=(value)
    @decision_histories_for_reviewers_enabled = value
end

#default_decisionObject

Gets the defaultDecision property value. Decision chosen if defaultDecisionEnabled is enabled. Can be one of Approve, Deny, or Recommendation.

Returns:

  • a string



134
135
136
# File 'lib/models/access_review_schedule_settings.rb', line 134

def default_decision
    return @default_decision
end

#default_decision=(value) ⇒ Object

Sets the defaultDecision property value. Decision chosen if defaultDecisionEnabled is enabled. Can be one of Approve, Deny, or Recommendation.

Parameters:

  • Value to set for the defaultDecision property.

Returns:

  • a void



142
143
144
# File 'lib/models/access_review_schedule_settings.rb', line 142

def default_decision=(value)
    @default_decision = value
end

#default_decision_enabledObject

Gets the defaultDecisionEnabled property value. Indicates whether the default decision is enabled or disabled when reviewers do not respond. Default value is false. CAUTION: If both autoApplyDecisionsEnabled and defaultDecisionEnabled are true, all access for the principals to the resource risks being revoked if the reviewers fail to respond.

Returns:

  • a boolean



149
150
151
# File 'lib/models/access_review_schedule_settings.rb', line 149

def default_decision_enabled
    return @default_decision_enabled
end

#default_decision_enabled=(value) ⇒ Object

Sets the defaultDecisionEnabled property value. Indicates whether the default decision is enabled or disabled when reviewers do not respond. Default value is false. CAUTION: If both autoApplyDecisionsEnabled and defaultDecisionEnabled are true, all access for the principals to the resource risks being revoked if the reviewers fail to respond.

Parameters:

  • Value to set for the defaultDecisionEnabled property.

Returns:

  • a void



157
158
159
# File 'lib/models/access_review_schedule_settings.rb', line 157

def default_decision_enabled=(value)
    @default_decision_enabled = value
end

#get_field_deserializersObject

The deserialization information for the current model

Returns:

  • a i_dictionary



164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
# File 'lib/models/access_review_schedule_settings.rb', line 164

def get_field_deserializers()
    return {
        "applyActions" => lambda {|n| @apply_actions = n.get_collection_of_object_values(lambda {|pn| MicrosoftGraph::Models::AccessReviewApplyAction.create_from_discriminator_value(pn) }) },
        "autoApplyDecisionsEnabled" => lambda {|n| @auto_apply_decisions_enabled = n.get_boolean_value() },
        "decisionHistoriesForReviewersEnabled" => lambda {|n| @decision_histories_for_reviewers_enabled = n.get_boolean_value() },
        "defaultDecision" => lambda {|n| @default_decision = n.get_string_value() },
        "defaultDecisionEnabled" => lambda {|n| @default_decision_enabled = n.get_boolean_value() },
        "instanceDurationInDays" => lambda {|n| @instance_duration_in_days = n.get_number_value() },
        "justificationRequiredOnApproval" => lambda {|n| @justification_required_on_approval = n.get_boolean_value() },
        "mailNotificationsEnabled" => lambda {|n| @mail_notifications_enabled = n.get_boolean_value() },
        "@odata.type" => lambda {|n| @odata_type = n.get_string_value() },
        "recommendationInsightSettings" => lambda {|n| @recommendation_insight_settings = n.get_collection_of_object_values(lambda {|pn| MicrosoftGraph::Models::AccessReviewRecommendationInsightSetting.create_from_discriminator_value(pn) }) },
        "recommendationLookBackDuration" => lambda {|n| @recommendation_look_back_duration = n.get_duration_value() },
        "recommendationsEnabled" => lambda {|n| @recommendations_enabled = n.get_boolean_value() },
        "recurrence" => lambda {|n| @recurrence = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::PatternedRecurrence.create_from_discriminator_value(pn) }) },
        "reminderNotificationsEnabled" => lambda {|n| @reminder_notifications_enabled = n.get_boolean_value() },
    }
end

#instance_duration_in_daysObject

Gets the instanceDurationInDays property value. Duration of an access review instance in days. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its durationInDays setting will be used instead of the value of this property.

Returns:

  • a integer



186
187
188
# File 'lib/models/access_review_schedule_settings.rb', line 186

def instance_duration_in_days
    return @instance_duration_in_days
end

#instance_duration_in_days=(value) ⇒ Object

Sets the instanceDurationInDays property value. Duration of an access review instance in days. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its durationInDays setting will be used instead of the value of this property.

Parameters:

  • Value to set for the instanceDurationInDays property.

Returns:

  • a void



194
195
196
# File 'lib/models/access_review_schedule_settings.rb', line 194

def instance_duration_in_days=(value)
    @instance_duration_in_days = value
end

#justification_required_on_approvalObject

Gets the justificationRequiredOnApproval property value. Indicates whether reviewers are required to provide justification with their decision. Default value is false.

Returns:

  • a boolean



201
202
203
# File 'lib/models/access_review_schedule_settings.rb', line 201

def justification_required_on_approval
    return @justification_required_on_approval
end

#justification_required_on_approval=(value) ⇒ Object

Sets the justificationRequiredOnApproval property value. Indicates whether reviewers are required to provide justification with their decision. Default value is false.

Parameters:

  • Value to set for the justificationRequiredOnApproval property.

Returns:

  • a void



209
210
211
# File 'lib/models/access_review_schedule_settings.rb', line 209

def justification_required_on_approval=(value)
    @justification_required_on_approval = value
end

#mail_notifications_enabledObject

Gets the mailNotificationsEnabled property value. Indicates whether emails are enabled or disabled. Default value is false.

Returns:

  • a boolean



216
217
218
# File 'lib/models/access_review_schedule_settings.rb', line 216

def mail_notifications_enabled
    return @mail_notifications_enabled
end

#mail_notifications_enabled=(value) ⇒ Object

Sets the mailNotificationsEnabled property value. Indicates whether emails are enabled or disabled. Default value is false.

Parameters:

  • Value to set for the mailNotificationsEnabled property.

Returns:

  • a void



224
225
226
# File 'lib/models/access_review_schedule_settings.rb', line 224

def mail_notifications_enabled=(value)
    @mail_notifications_enabled = value
end

#odata_typeObject

Gets the @odata.type property value. The OdataType property

Returns:

  • a string



231
232
233
# File 'lib/models/access_review_schedule_settings.rb', line 231

def odata_type
    return @odata_type
end

#odata_type=(value) ⇒ Object

Sets the @odata.type property value. The OdataType property

Parameters:

  • Value to set for the @odata.type property.

Returns:

  • a void



239
240
241
# File 'lib/models/access_review_schedule_settings.rb', line 239

def odata_type=(value)
    @odata_type = value
end

#recommendation_insight_settingsObject

Gets the recommendationInsightSettings property value. Optional. Describes the types of insights that aid reviewers to make access review decisions. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its recommendationInsightSettings setting will be used instead of the value of this property.

Returns:

  • a access_review_recommendation_insight_setting



246
247
248
# File 'lib/models/access_review_schedule_settings.rb', line 246

def recommendation_insight_settings
    return @recommendation_insight_settings
end

#recommendation_insight_settings=(value) ⇒ Object

Sets the recommendationInsightSettings property value. Optional. Describes the types of insights that aid reviewers to make access review decisions. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its recommendationInsightSettings setting will be used instead of the value of this property.

Parameters:

  • Value to set for the recommendationInsightSettings property.

Returns:

  • a void



254
255
256
# File 'lib/models/access_review_schedule_settings.rb', line 254

def recommendation_insight_settings=(value)
    @recommendation_insight_settings = value
end

#recommendation_look_back_durationObject

Gets the recommendationLookBackDuration property value. Optional field. Indicates the period of inactivity (with respect to the start date of the review instance) that recommendations will be configured from. The recommendation will be to deny if the user is inactive during the look-back duration. For reviews of groups and Azure AD roles, any duration is accepted. For reviews of applications, 30 days is the maximum duration. If not specified, the duration is 30 days. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its recommendationLookBackDuration setting will be used instead of the value of this property.

Returns:

  • a microsoft_kiota_abstractions::_i_s_o_duration



261
262
263
# File 'lib/models/access_review_schedule_settings.rb', line 261

def recommendation_look_back_duration
    return @recommendation_look_back_duration
end

#recommendation_look_back_duration=(value) ⇒ Object

Sets the recommendationLookBackDuration property value. Optional field. Indicates the period of inactivity (with respect to the start date of the review instance) that recommendations will be configured from. The recommendation will be to deny if the user is inactive during the look-back duration. For reviews of groups and Azure AD roles, any duration is accepted. For reviews of applications, 30 days is the maximum duration. If not specified, the duration is 30 days. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its recommendationLookBackDuration setting will be used instead of the value of this property.

Parameters:

  • Value to set for the recommendationLookBackDuration property.

Returns:

  • a void



269
270
271
# File 'lib/models/access_review_schedule_settings.rb', line 269

def recommendation_look_back_duration=(value)
    @recommendation_look_back_duration = value
end

#recommendations_enabledObject

Gets the recommendationsEnabled property value. Indicates whether decision recommendations are enabled or disabled. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its recommendationsEnabled setting will be used instead of the value of this property.

Returns:

  • a boolean



276
277
278
# File 'lib/models/access_review_schedule_settings.rb', line 276

def recommendations_enabled
    return @recommendations_enabled
end

#recommendations_enabled=(value) ⇒ Object

Sets the recommendationsEnabled property value. Indicates whether decision recommendations are enabled or disabled. NOTE: If the stageSettings of the accessReviewScheduleDefinition object is defined, its recommendationsEnabled setting will be used instead of the value of this property.

Parameters:

  • Value to set for the recommendationsEnabled property.

Returns:

  • a void



284
285
286
# File 'lib/models/access_review_schedule_settings.rb', line 284

def recommendations_enabled=(value)
    @recommendations_enabled = value
end

#recurrenceObject

Gets the recurrence property value. Detailed settings for recurrence using the standard Outlook recurrence object. Note: Only dayOfMonth, interval, and type (weekly, absoluteMonthly) properties are supported. Use the property startDate on recurrenceRange to determine the day the review starts.

Returns:

  • a patterned_recurrence



291
292
293
# File 'lib/models/access_review_schedule_settings.rb', line 291

def recurrence
    return @recurrence
end

#recurrence=(value) ⇒ Object

Sets the recurrence property value. Detailed settings for recurrence using the standard Outlook recurrence object. Note: Only dayOfMonth, interval, and type (weekly, absoluteMonthly) properties are supported. Use the property startDate on recurrenceRange to determine the day the review starts.

Parameters:

  • Value to set for the recurrence property.

Returns:

  • a void



299
300
301
# File 'lib/models/access_review_schedule_settings.rb', line 299

def recurrence=(value)
    @recurrence = value
end

#reminder_notifications_enabledObject

Gets the reminderNotificationsEnabled property value. Indicates whether reminders are enabled or disabled. Default value is false.

Returns:

  • a boolean



306
307
308
# File 'lib/models/access_review_schedule_settings.rb', line 306

def reminder_notifications_enabled
    return @reminder_notifications_enabled
end

#reminder_notifications_enabled=(value) ⇒ Object

Sets the reminderNotificationsEnabled property value. Indicates whether reminders are enabled or disabled. Default value is false.

Parameters:

  • Value to set for the reminderNotificationsEnabled property.

Returns:

  • a void



314
315
316
# File 'lib/models/access_review_schedule_settings.rb', line 314

def reminder_notifications_enabled=(value)
    @reminder_notifications_enabled = value
end

#serialize(writer) ⇒ Object

Serializes information the current object

Parameters:

  • Serialization writer to use to serialize this model

Returns:

  • a void

Raises:



322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
# File 'lib/models/access_review_schedule_settings.rb', line 322

def serialize(writer)
    raise StandardError, 'writer cannot be null' if writer.nil?
    writer.write_collection_of_object_values("applyActions", @apply_actions)
    writer.write_boolean_value("autoApplyDecisionsEnabled", @auto_apply_decisions_enabled)
    writer.write_boolean_value("decisionHistoriesForReviewersEnabled", @decision_histories_for_reviewers_enabled)
    writer.write_string_value("defaultDecision", @default_decision)
    writer.write_boolean_value("defaultDecisionEnabled", @default_decision_enabled)
    writer.write_number_value("instanceDurationInDays", @instance_duration_in_days)
    writer.write_boolean_value("justificationRequiredOnApproval", @justification_required_on_approval)
    writer.write_boolean_value("mailNotificationsEnabled", @mail_notifications_enabled)
    writer.write_string_value("@odata.type", @odata_type)
    writer.write_collection_of_object_values("recommendationInsightSettings", @recommendation_insight_settings)
    writer.write_duration_value("recommendationLookBackDuration", @recommendation_look_back_duration)
    writer.write_boolean_value("recommendationsEnabled", @recommendations_enabled)
    writer.write_object_value("recurrence", @recurrence)
    writer.write_boolean_value("reminderNotificationsEnabled", @reminder_notifications_enabled)
    writer.write_additional_data(@additional_data)
end