forked from microsoftgraph/msgraph-sdk-php
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAccessPackageAssignmentPolicy.php
More file actions
505 lines (471 loc) · 17.1 KB
/
Copy pathAccessPackageAssignmentPolicy.php
File metadata and controls
505 lines (471 loc) · 17.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
<?php
/**
* Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the MIT License. See License in the project root for license information.
*
* AccessPackageAssignmentPolicy File
* PHP version 7
*
* @category Library
* @package Microsoft.Graph
* @copyright (c) Microsoft Corporation. All rights reserved.
* @license https://opensource.org/licenses/MIT MIT License
* @link https://graph.microsoft.com
*/
namespace Microsoft\Graph\Model;
/**
* AccessPackageAssignmentPolicy class
*
* @category Model
* @package Microsoft.Graph
* @copyright (c) Microsoft Corporation. All rights reserved.
* @license https://opensource.org/licenses/MIT MIT License
* @link https://graph.microsoft.com
*/
class AccessPackageAssignmentPolicy extends Entity
{
/**
* Gets the allowedTargetScope
* Principals that can be assigned the access package through this policy. The possible values are: notSpecified, specificDirectoryUsers, specificConnectedOrganizationUsers, specificDirectoryServicePrincipals, allMemberUsers, allDirectoryUsers, allDirectoryServicePrincipals, allConfiguredConnectedOrganizationUsers, allExternalUsers, unknownFutureValue.
*
* @return AllowedTargetScope|null The allowedTargetScope
*/
public function getAllowedTargetScope()
{
if (array_key_exists("allowedTargetScope", $this->_propDict)) {
if (is_a($this->_propDict["allowedTargetScope"], "\Microsoft\Graph\Model\AllowedTargetScope") || is_null($this->_propDict["allowedTargetScope"])) {
return $this->_propDict["allowedTargetScope"];
} else {
$this->_propDict["allowedTargetScope"] = new AllowedTargetScope($this->_propDict["allowedTargetScope"]);
return $this->_propDict["allowedTargetScope"];
}
}
return null;
}
/**
* Sets the allowedTargetScope
* Principals that can be assigned the access package through this policy. The possible values are: notSpecified, specificDirectoryUsers, specificConnectedOrganizationUsers, specificDirectoryServicePrincipals, allMemberUsers, allDirectoryUsers, allDirectoryServicePrincipals, allConfiguredConnectedOrganizationUsers, allExternalUsers, unknownFutureValue.
*
* @param AllowedTargetScope $val The allowedTargetScope
*
* @return AccessPackageAssignmentPolicy
*/
public function setAllowedTargetScope($val)
{
$this->_propDict["allowedTargetScope"] = $val;
return $this;
}
/**
* Gets the automaticRequestSettings
* This property is only present for an auto assignment policy; if absent, this is a request-based policy.
*
* @return AccessPackageAutomaticRequestSettings|null The automaticRequestSettings
*/
public function getAutomaticRequestSettings()
{
if (array_key_exists("automaticRequestSettings", $this->_propDict)) {
if (is_a($this->_propDict["automaticRequestSettings"], "\Microsoft\Graph\Model\AccessPackageAutomaticRequestSettings") || is_null($this->_propDict["automaticRequestSettings"])) {
return $this->_propDict["automaticRequestSettings"];
} else {
$this->_propDict["automaticRequestSettings"] = new AccessPackageAutomaticRequestSettings($this->_propDict["automaticRequestSettings"]);
return $this->_propDict["automaticRequestSettings"];
}
}
return null;
}
/**
* Sets the automaticRequestSettings
* This property is only present for an auto assignment policy; if absent, this is a request-based policy.
*
* @param AccessPackageAutomaticRequestSettings $val The automaticRequestSettings
*
* @return AccessPackageAssignmentPolicy
*/
public function setAutomaticRequestSettings($val)
{
$this->_propDict["automaticRequestSettings"] = $val;
return $this;
}
/**
* Gets the createdDateTime
* The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
*
* @return \DateTime|null The createdDateTime
*/
public function getCreatedDateTime()
{
if (array_key_exists("createdDateTime", $this->_propDict)) {
if (is_a($this->_propDict["createdDateTime"], "\DateTime") || is_null($this->_propDict["createdDateTime"])) {
return $this->_propDict["createdDateTime"];
} else {
$this->_propDict["createdDateTime"] = new \DateTime($this->_propDict["createdDateTime"]);
return $this->_propDict["createdDateTime"];
}
}
return null;
}
/**
* Sets the createdDateTime
* The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
*
* @param \DateTime $val The createdDateTime
*
* @return AccessPackageAssignmentPolicy
*/
public function setCreatedDateTime($val)
{
$this->_propDict["createdDateTime"] = $val;
return $this;
}
/**
* Gets the description
* The description of the policy.
*
* @return string|null The description
*/
public function getDescription()
{
if (array_key_exists("description", $this->_propDict)) {
return $this->_propDict["description"];
} else {
return null;
}
}
/**
* Sets the description
* The description of the policy.
*
* @param string $val The description
*
* @return AccessPackageAssignmentPolicy
*/
public function setDescription($val)
{
$this->_propDict["description"] = $val;
return $this;
}
/**
* Gets the displayName
* The display name of the policy.
*
* @return string|null The displayName
*/
public function getDisplayName()
{
if (array_key_exists("displayName", $this->_propDict)) {
return $this->_propDict["displayName"];
} else {
return null;
}
}
/**
* Sets the displayName
* The display name of the policy.
*
* @param string $val The displayName
*
* @return AccessPackageAssignmentPolicy
*/
public function setDisplayName($val)
{
$this->_propDict["displayName"] = $val;
return $this;
}
/**
* Gets the expiration
* The expiration date for assignments created in this policy.
*
* @return ExpirationPattern|null The expiration
*/
public function getExpiration()
{
if (array_key_exists("expiration", $this->_propDict)) {
if (is_a($this->_propDict["expiration"], "\Microsoft\Graph\Model\ExpirationPattern") || is_null($this->_propDict["expiration"])) {
return $this->_propDict["expiration"];
} else {
$this->_propDict["expiration"] = new ExpirationPattern($this->_propDict["expiration"]);
return $this->_propDict["expiration"];
}
}
return null;
}
/**
* Sets the expiration
* The expiration date for assignments created in this policy.
*
* @param ExpirationPattern $val The expiration
*
* @return AccessPackageAssignmentPolicy
*/
public function setExpiration($val)
{
$this->_propDict["expiration"] = $val;
return $this;
}
/**
* Gets the modifiedDateTime
* The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
*
* @return \DateTime|null The modifiedDateTime
*/
public function getModifiedDateTime()
{
if (array_key_exists("modifiedDateTime", $this->_propDict)) {
if (is_a($this->_propDict["modifiedDateTime"], "\DateTime") || is_null($this->_propDict["modifiedDateTime"])) {
return $this->_propDict["modifiedDateTime"];
} else {
$this->_propDict["modifiedDateTime"] = new \DateTime($this->_propDict["modifiedDateTime"]);
return $this->_propDict["modifiedDateTime"];
}
}
return null;
}
/**
* Sets the modifiedDateTime
* The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
*
* @param \DateTime $val The modifiedDateTime
*
* @return AccessPackageAssignmentPolicy
*/
public function setModifiedDateTime($val)
{
$this->_propDict["modifiedDateTime"] = $val;
return $this;
}
/**
* Gets the requestApprovalSettings
* Specifies the settings for approval of requests for an access package assignment through this policy. For example, if approval is required for new requests.
*
* @return AccessPackageAssignmentApprovalSettings|null The requestApprovalSettings
*/
public function getRequestApprovalSettings()
{
if (array_key_exists("requestApprovalSettings", $this->_propDict)) {
if (is_a($this->_propDict["requestApprovalSettings"], "\Microsoft\Graph\Model\AccessPackageAssignmentApprovalSettings") || is_null($this->_propDict["requestApprovalSettings"])) {
return $this->_propDict["requestApprovalSettings"];
} else {
$this->_propDict["requestApprovalSettings"] = new AccessPackageAssignmentApprovalSettings($this->_propDict["requestApprovalSettings"]);
return $this->_propDict["requestApprovalSettings"];
}
}
return null;
}
/**
* Sets the requestApprovalSettings
* Specifies the settings for approval of requests for an access package assignment through this policy. For example, if approval is required for new requests.
*
* @param AccessPackageAssignmentApprovalSettings $val The requestApprovalSettings
*
* @return AccessPackageAssignmentPolicy
*/
public function setRequestApprovalSettings($val)
{
$this->_propDict["requestApprovalSettings"] = $val;
return $this;
}
/**
* Gets the requestorSettings
* Provides additional settings to select who can create a request for an access package assignment through this policy, and what they can include in their request.
*
* @return AccessPackageAssignmentRequestorSettings|null The requestorSettings
*/
public function getRequestorSettings()
{
if (array_key_exists("requestorSettings", $this->_propDict)) {
if (is_a($this->_propDict["requestorSettings"], "\Microsoft\Graph\Model\AccessPackageAssignmentRequestorSettings") || is_null($this->_propDict["requestorSettings"])) {
return $this->_propDict["requestorSettings"];
} else {
$this->_propDict["requestorSettings"] = new AccessPackageAssignmentRequestorSettings($this->_propDict["requestorSettings"]);
return $this->_propDict["requestorSettings"];
}
}
return null;
}
/**
* Sets the requestorSettings
* Provides additional settings to select who can create a request for an access package assignment through this policy, and what they can include in their request.
*
* @param AccessPackageAssignmentRequestorSettings $val The requestorSettings
*
* @return AccessPackageAssignmentPolicy
*/
public function setRequestorSettings($val)
{
$this->_propDict["requestorSettings"] = $val;
return $this;
}
/**
* Gets the reviewSettings
* Settings for access reviews of assignments through this policy.
*
* @return AccessPackageAssignmentReviewSettings|null The reviewSettings
*/
public function getReviewSettings()
{
if (array_key_exists("reviewSettings", $this->_propDict)) {
if (is_a($this->_propDict["reviewSettings"], "\Microsoft\Graph\Model\AccessPackageAssignmentReviewSettings") || is_null($this->_propDict["reviewSettings"])) {
return $this->_propDict["reviewSettings"];
} else {
$this->_propDict["reviewSettings"] = new AccessPackageAssignmentReviewSettings($this->_propDict["reviewSettings"]);
return $this->_propDict["reviewSettings"];
}
}
return null;
}
/**
* Sets the reviewSettings
* Settings for access reviews of assignments through this policy.
*
* @param AccessPackageAssignmentReviewSettings $val The reviewSettings
*
* @return AccessPackageAssignmentPolicy
*/
public function setReviewSettings($val)
{
$this->_propDict["reviewSettings"] = $val;
return $this;
}
/**
* Gets the specificAllowedTargets
* The principals that can be assigned access from an access package through this policy.
*
* @return array|null The specificAllowedTargets
*/
public function getSpecificAllowedTargets()
{
if (array_key_exists("specificAllowedTargets", $this->_propDict)) {
return $this->_propDict["specificAllowedTargets"];
} else {
return null;
}
}
/**
* Sets the specificAllowedTargets
* The principals that can be assigned access from an access package through this policy.
*
* @param SubjectSet[] $val The specificAllowedTargets
*
* @return AccessPackageAssignmentPolicy
*/
public function setSpecificAllowedTargets($val)
{
$this->_propDict["specificAllowedTargets"] = $val;
return $this;
}
/**
* Gets the accessPackage
* Access package containing this policy. Read-only. Supports $expand.
*
* @return AccessPackage|null The accessPackage
*/
public function getAccessPackage()
{
if (array_key_exists("accessPackage", $this->_propDict)) {
if (is_a($this->_propDict["accessPackage"], "\Microsoft\Graph\Model\AccessPackage") || is_null($this->_propDict["accessPackage"])) {
return $this->_propDict["accessPackage"];
} else {
$this->_propDict["accessPackage"] = new AccessPackage($this->_propDict["accessPackage"]);
return $this->_propDict["accessPackage"];
}
}
return null;
}
/**
* Sets the accessPackage
* Access package containing this policy. Read-only. Supports $expand.
*
* @param AccessPackage $val The accessPackage
*
* @return AccessPackageAssignmentPolicy
*/
public function setAccessPackage($val)
{
$this->_propDict["accessPackage"] = $val;
return $this;
}
/**
* Gets the catalog
* Catalog of the access package containing this policy. Read-only.
*
* @return AccessPackageCatalog|null The catalog
*/
public function getCatalog()
{
if (array_key_exists("catalog", $this->_propDict)) {
if (is_a($this->_propDict["catalog"], "\Microsoft\Graph\Model\AccessPackageCatalog") || is_null($this->_propDict["catalog"])) {
return $this->_propDict["catalog"];
} else {
$this->_propDict["catalog"] = new AccessPackageCatalog($this->_propDict["catalog"]);
return $this->_propDict["catalog"];
}
}
return null;
}
/**
* Sets the catalog
* Catalog of the access package containing this policy. Read-only.
*
* @param AccessPackageCatalog $val The catalog
*
* @return AccessPackageAssignmentPolicy
*/
public function setCatalog($val)
{
$this->_propDict["catalog"] = $val;
return $this;
}
/**
* Gets the customExtensionStageSettings
* The collection of stages when to execute one or more custom access package workflow extensions. Supports $expand.
*
* @return array|null The customExtensionStageSettings
*/
public function getCustomExtensionStageSettings()
{
if (array_key_exists("customExtensionStageSettings", $this->_propDict)) {
return $this->_propDict["customExtensionStageSettings"];
} else {
return null;
}
}
/**
* Sets the customExtensionStageSettings
* The collection of stages when to execute one or more custom access package workflow extensions. Supports $expand.
*
* @param CustomExtensionStageSetting[] $val The customExtensionStageSettings
*
* @return AccessPackageAssignmentPolicy
*/
public function setCustomExtensionStageSettings($val)
{
$this->_propDict["customExtensionStageSettings"] = $val;
return $this;
}
/**
* Gets the questions
* Questions that are posed to the requestor.
*
* @return array|null The questions
*/
public function getQuestions()
{
if (array_key_exists("questions", $this->_propDict)) {
return $this->_propDict["questions"];
} else {
return null;
}
}
/**
* Sets the questions
* Questions that are posed to the requestor.
*
* @param AccessPackageQuestion[] $val The questions
*
* @return AccessPackageAssignmentPolicy
*/
public function setQuestions($val)
{
$this->_propDict["questions"] = $val;
return $this;
}
}