Class: MicrosoftGraph::Models::UnifiedRoleEligibilityScheduleRequest

Inherits:
Request
  • Object
show all
Includes:
MicrosoftKiotaAbstractions::Parsable
Defined in:
lib/models/unified_role_eligibility_schedule_request.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Request

#approval_id, #approval_id=, #completed_date_time, #completed_date_time=, #created_by, #created_by=, #created_date_time, #created_date_time=, #custom_data, #custom_data=, #status, #status=

Methods inherited from Entity

#additional_data, #additional_data=, #id, #id=, #odata_type, #odata_type=

Constructor Details

#initializeObject

Instantiates a new unifiedRoleEligibilityScheduleRequest and sets the default values.



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

def initialize()
    super
end

Class Method Details

.create_from_discriminator_value(parse_node) ⇒ Object

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

Parameters:

  • parse_node

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

Returns:

  • a unified_role_eligibility_schedule_request

Raises:

  • (StandardError)


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

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

Instance Method Details

#actionObject

Gets the action property value. Represents the type of operation on the role eligibility request. The possible values are: adminAssign, adminUpdate, adminRemove, selfActivate, selfDeactivate, adminExtend, adminRenew, selfExtend, selfRenew, unknownFutureValue. adminAssign: For administrators to assign eligible roles to principals.adminRemove: For administrators to remove eligible roles from principals. adminUpdate: For administrators to change existing role eligibilities.adminExtend: For administrators to extend expiring role eligibilities.adminRenew: For administrators to renew expired eligibilities.selfActivate: For users to activate their assignments.selfDeactivate: For users to deactivate their active assignments.selfExtend: For users to request to extend their expiring assignments.selfRenew: For users to request to renew their expired assignments.

Returns:

  • a unified_role_schedule_request_actions



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

def action
    return @action
end

#action=(value) ⇒ Object

Sets the action property value. Represents the type of operation on the role eligibility request. The possible values are: adminAssign, adminUpdate, adminRemove, selfActivate, selfDeactivate, adminExtend, adminRenew, selfExtend, selfRenew, unknownFutureValue. adminAssign: For administrators to assign eligible roles to principals.adminRemove: For administrators to remove eligible roles from principals. adminUpdate: For administrators to change existing role eligibilities.adminExtend: For administrators to extend expiring role eligibilities.adminRenew: For administrators to renew expired eligibilities.selfActivate: For users to activate their assignments.selfDeactivate: For users to deactivate their active assignments.selfExtend: For users to request to extend their expiring assignments.selfRenew: For users to request to renew their expired assignments.

Parameters:

  • value

    Value to set for the action property.

Returns:

  • a void



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

def action=(value)
    @action = value
end

#app_scopeObject

Gets the appScope property value. Read-only property with details of the app-specific scope when the role eligibility is scoped to an app. Nullable. Supports $expand.

Returns:

  • a app_scope



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

def app_scope
    return @app_scope
end

#app_scope=(value) ⇒ Object

Sets the appScope property value. Read-only property with details of the app-specific scope when the role eligibility is scoped to an app. Nullable. Supports $expand.

Parameters:

  • value

    Value to set for the appScope property.

Returns:

  • a void



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

def app_scope=(value)
    @app_scope = value
end

#app_scope_idObject

Gets the appScopeId property value. Identifier of the app-specific scope when the role eligibility is scoped to an app. The scope of a role eligibility determines the set of resources for which the principal is eligible to access. App scopes are scopes that are defined and understood by this application only. Use / for tenant-wide app scopes. Use directoryScopeId to limit the scope to particular directory objects, for example, administrative units. Supports $filter (eq, ne, and on null values).

Returns:

  • a string



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

def app_scope_id
    return @app_scope_id
end

#app_scope_id=(value) ⇒ Object

Sets the appScopeId property value. Identifier of the app-specific scope when the role eligibility is scoped to an app. The scope of a role eligibility determines the set of resources for which the principal is eligible to access. App scopes are scopes that are defined and understood by this application only. Use / for tenant-wide app scopes. Use directoryScopeId to limit the scope to particular directory objects, for example, administrative units. Supports $filter (eq, ne, and on null values).

Parameters:

  • value

    Value to set for the appScopeId property.

Returns:

  • a void



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

def app_scope_id=(value)
    @app_scope_id = value
end

#directory_scopeObject

Gets the directoryScope property value. The directory object that is the scope of the role eligibility. Read-only. Supports $expand.

Returns:

  • a directory_object



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

def directory_scope
    return @directory_scope
end

#directory_scope=(value) ⇒ Object

Sets the directoryScope property value. The directory object that is the scope of the role eligibility. Read-only. Supports $expand.

Parameters:

  • value

    Value to set for the directoryScope property.

Returns:

  • a void



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

def directory_scope=(value)
    @directory_scope = value
end

#directory_scope_idObject

Gets the directoryScopeId property value. Identifier of the directory object representing the scope of the role eligibility. The scope of a role eligibility determines the set of resources for which the principal has been granted access. Directory scopes are shared scopes stored in the directory that are understood by multiple applications. Use / for tenant-wide scope. Use appScopeId to limit the scope to an application only. Supports $filter (eq, ne, and on null values).

Returns:

  • a string



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

def directory_scope_id
    return @directory_scope_id
end

#directory_scope_id=(value) ⇒ Object

Sets the directoryScopeId property value. Identifier of the directory object representing the scope of the role eligibility. The scope of a role eligibility determines the set of resources for which the principal has been granted access. Directory scopes are shared scopes stored in the directory that are understood by multiple applications. Use / for tenant-wide scope. Use appScopeId to limit the scope to an application only. Supports $filter (eq, ne, and on null values).

Parameters:

  • value

    Value to set for the directoryScopeId property.

Returns:

  • a void



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

def directory_scope_id=(value)
    @directory_scope_id = value
end

#get_field_deserializersObject

The deserialization information for the current model

Returns:

  • a i_dictionary



149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 149

def get_field_deserializers()
    return super.merge({
        "action" => lambda {|n| @action = n.get_enum_value(MicrosoftGraph::Models::UnifiedRoleScheduleRequestActions) },
        "appScope" => lambda {|n| @app_scope = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::AppScope.create_from_discriminator_value(pn) }) },
        "appScopeId" => lambda {|n| @app_scope_id = n.get_string_value() },
        "directoryScope" => lambda {|n| @directory_scope = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::DirectoryObject.create_from_discriminator_value(pn) }) },
        "directoryScopeId" => lambda {|n| @directory_scope_id = n.get_string_value() },
        "isValidationOnly" => lambda {|n| @is_validation_only = n.get_boolean_value() },
        "justification" => lambda {|n| @justification = n.get_string_value() },
        "principal" => lambda {|n| @principal = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::DirectoryObject.create_from_discriminator_value(pn) }) },
        "principalId" => lambda {|n| @principal_id = n.get_string_value() },
        "roleDefinition" => lambda {|n| @role_definition = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::UnifiedRoleDefinition.create_from_discriminator_value(pn) }) },
        "roleDefinitionId" => lambda {|n| @role_definition_id = n.get_string_value() },
        "scheduleInfo" => lambda {|n| @schedule_info = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::RequestSchedule.create_from_discriminator_value(pn) }) },
        "targetSchedule" => lambda {|n| @target_schedule = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::UnifiedRoleEligibilitySchedule.create_from_discriminator_value(pn) }) },
        "targetScheduleId" => lambda {|n| @target_schedule_id = n.get_string_value() },
        "ticketInfo" => lambda {|n| @ticket_info = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::TicketInfo.create_from_discriminator_value(pn) }) },
    })
end

#is_validation_onlyObject

Gets the isValidationOnly property value. Determines whether the call is a validation or an actual call. Only set this property if you want to check whether an activation is subject to additional rules like MFA before actually submitting the request.

Returns:

  • a boolean



172
173
174
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 172

def is_validation_only
    return @is_validation_only
end

#is_validation_only=(value) ⇒ Object

Sets the isValidationOnly property value. Determines whether the call is a validation or an actual call. Only set this property if you want to check whether an activation is subject to additional rules like MFA before actually submitting the request.

Parameters:

  • value

    Value to set for the isValidationOnly property.

Returns:

  • a void



180
181
182
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 180

def is_validation_only=(value)
    @is_validation_only = value
end

#justificationObject

Gets the justification property value. A message provided by users and administrators when create they create the unifiedRoleEligibilityScheduleRequest object.

Returns:

  • a string



187
188
189
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 187

def justification
    return @justification
end

#justification=(value) ⇒ Object

Sets the justification property value. A message provided by users and administrators when create they create the unifiedRoleEligibilityScheduleRequest object.

Parameters:

  • value

    Value to set for the justification property.

Returns:

  • a void



195
196
197
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 195

def justification=(value)
    @justification = value
end

#principalObject

Gets the principal property value. The principal that’s getting a role eligibility through the request. Supports $expand.

Returns:

  • a directory_object



202
203
204
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 202

def principal
    return @principal
end

#principal=(value) ⇒ Object

Sets the principal property value. The principal that’s getting a role eligibility through the request. Supports $expand.

Parameters:

  • value

    Value to set for the principal property.

Returns:

  • a void



210
211
212
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 210

def principal=(value)
    @principal = value
end

#principal_idObject

Gets the principalId property value. Identifier of the principal that has been granted the role eligibility. Can be a user or a role-assignable group. You can grant only active assignments service principals.Supports $filter (eq, ne).

Returns:

  • a string



217
218
219
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 217

def principal_id
    return @principal_id
end

#principal_id=(value) ⇒ Object

Sets the principalId property value. Identifier of the principal that has been granted the role eligibility. Can be a user or a role-assignable group. You can grant only active assignments service principals.Supports $filter (eq, ne).

Parameters:

  • value

    Value to set for the principalId property.

Returns:

  • a void



225
226
227
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 225

def principal_id=(value)
    @principal_id = value
end

#role_definitionObject

Gets the roleDefinition property value. Detailed information for the unifiedRoleDefinition object that is referenced through the roleDefinitionId property. Supports $expand.

Returns:

  • a unified_role_definition



232
233
234
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 232

def role_definition
    return @role_definition
end

#role_definition=(value) ⇒ Object

Sets the roleDefinition property value. Detailed information for the unifiedRoleDefinition object that is referenced through the roleDefinitionId property. Supports $expand.

Parameters:

  • value

    Value to set for the roleDefinition property.

Returns:

  • a void



240
241
242
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 240

def role_definition=(value)
    @role_definition = value
end

#role_definition_idObject

Gets the roleDefinitionId property value. Identifier of the unifiedRoleDefinition object that is being assigned to the principal. Supports $filter (eq, ne).

Returns:

  • a string



247
248
249
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 247

def role_definition_id
    return @role_definition_id
end

#role_definition_id=(value) ⇒ Object

Sets the roleDefinitionId property value. Identifier of the unifiedRoleDefinition object that is being assigned to the principal. Supports $filter (eq, ne).

Parameters:

  • value

    Value to set for the roleDefinitionId property.

Returns:

  • a void



255
256
257
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 255

def role_definition_id=(value)
    @role_definition_id = value
end

#schedule_infoObject

Gets the scheduleInfo property value. The period of the role eligibility. Recurring schedules are currently unsupported.

Returns:

  • a request_schedule



262
263
264
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 262

def schedule_info
    return @schedule_info
end

#schedule_info=(value) ⇒ Object

Sets the scheduleInfo property value. The period of the role eligibility. Recurring schedules are currently unsupported.

Parameters:

  • value

    Value to set for the scheduleInfo property.

Returns:

  • a void



270
271
272
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 270

def schedule_info=(value)
    @schedule_info = value
end

#serialize(writer) ⇒ Object

Serializes information the current object

Parameters:

  • writer

    Serialization writer to use to serialize this model

Returns:

  • a void

Raises:

  • (StandardError)


278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 278

def serialize(writer)
    raise StandardError, 'writer cannot be null' if writer.nil?
    super
    writer.write_enum_value("action", @action)
    writer.write_object_value("appScope", @app_scope)
    writer.write_string_value("appScopeId", @app_scope_id)
    writer.write_object_value("directoryScope", @directory_scope)
    writer.write_string_value("directoryScopeId", @directory_scope_id)
    writer.write_boolean_value("isValidationOnly", @is_validation_only)
    writer.write_string_value("justification", @justification)
    writer.write_object_value("principal", @principal)
    writer.write_string_value("principalId", @principal_id)
    writer.write_object_value("roleDefinition", @role_definition)
    writer.write_string_value("roleDefinitionId", @role_definition_id)
    writer.write_object_value("scheduleInfo", @schedule_info)
    writer.write_object_value("targetSchedule", @target_schedule)
    writer.write_string_value("targetScheduleId", @target_schedule_id)
    writer.write_object_value("ticketInfo", @ticket_info)
end

#target_scheduleObject

Gets the targetSchedule property value. The schedule for a role eligibility that is referenced through the targetScheduleId property. Supports $expand.

Returns:

  • a unified_role_eligibility_schedule



301
302
303
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 301

def target_schedule
    return @target_schedule
end

#target_schedule=(value) ⇒ Object

Sets the targetSchedule property value. The schedule for a role eligibility that is referenced through the targetScheduleId property. Supports $expand.

Parameters:

  • value

    Value to set for the targetSchedule property.

Returns:

  • a void



309
310
311
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 309

def target_schedule=(value)
    @target_schedule = value
end

#target_schedule_idObject

Gets the targetScheduleId property value. Identifier of the schedule object that’s linked to the eligibility request. Supports $filter (eq, ne).

Returns:

  • a string



316
317
318
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 316

def target_schedule_id
    return @target_schedule_id
end

#target_schedule_id=(value) ⇒ Object

Sets the targetScheduleId property value. Identifier of the schedule object that’s linked to the eligibility request. Supports $filter (eq, ne).

Parameters:

  • value

    Value to set for the targetScheduleId property.

Returns:

  • a void



324
325
326
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 324

def target_schedule_id=(value)
    @target_schedule_id = value
end

#ticket_infoObject

Gets the ticketInfo property value. Ticket details linked to the role eligibility request including details of the ticket number and ticket system. Optional.

Returns:

  • a ticket_info



331
332
333
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 331

def ticket_info
    return @ticket_info
end

#ticket_info=(value) ⇒ Object

Sets the ticketInfo property value. Ticket details linked to the role eligibility request including details of the ticket number and ticket system. Optional.

Parameters:

  • value

    Value to set for the ticketInfo property.

Returns:

  • a void



339
340
341
# File 'lib/models/unified_role_eligibility_schedule_request.rb', line 339

def ticket_info=(value)
    @ticket_info = value
end