@alicloud/cloudsso20210515 1.0.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/client.ts CHANGED
@@ -734,6 +734,93 @@ export class CreateUserResponse extends $tea.Model {
734
734
  }
735
735
  }
736
736
 
737
+ export class CreateUserProvisioningRequest extends $tea.Model {
738
+ deletionStrategy?: string;
739
+ description?: string;
740
+ directoryId?: string;
741
+ duplicationStrategy?: string;
742
+ principalId?: string;
743
+ principalType?: string;
744
+ targetId?: string;
745
+ targetType?: string;
746
+ static names(): { [key: string]: string } {
747
+ return {
748
+ deletionStrategy: 'DeletionStrategy',
749
+ description: 'Description',
750
+ directoryId: 'DirectoryId',
751
+ duplicationStrategy: 'DuplicationStrategy',
752
+ principalId: 'PrincipalId',
753
+ principalType: 'PrincipalType',
754
+ targetId: 'TargetId',
755
+ targetType: 'TargetType',
756
+ };
757
+ }
758
+
759
+ static types(): { [key: string]: any } {
760
+ return {
761
+ deletionStrategy: 'string',
762
+ description: 'string',
763
+ directoryId: 'string',
764
+ duplicationStrategy: 'string',
765
+ principalId: 'string',
766
+ principalType: 'string',
767
+ targetId: 'string',
768
+ targetType: 'string',
769
+ };
770
+ }
771
+
772
+ constructor(map?: { [key: string]: any }) {
773
+ super(map);
774
+ }
775
+ }
776
+
777
+ export class CreateUserProvisioningResponseBody extends $tea.Model {
778
+ requestId?: string;
779
+ userProvisioning?: CreateUserProvisioningResponseBodyUserProvisioning;
780
+ static names(): { [key: string]: string } {
781
+ return {
782
+ requestId: 'RequestId',
783
+ userProvisioning: 'UserProvisioning',
784
+ };
785
+ }
786
+
787
+ static types(): { [key: string]: any } {
788
+ return {
789
+ requestId: 'string',
790
+ userProvisioning: CreateUserProvisioningResponseBodyUserProvisioning,
791
+ };
792
+ }
793
+
794
+ constructor(map?: { [key: string]: any }) {
795
+ super(map);
796
+ }
797
+ }
798
+
799
+ export class CreateUserProvisioningResponse extends $tea.Model {
800
+ headers: { [key: string]: string };
801
+ statusCode: number;
802
+ body: CreateUserProvisioningResponseBody;
803
+ static names(): { [key: string]: string } {
804
+ return {
805
+ headers: 'headers',
806
+ statusCode: 'statusCode',
807
+ body: 'body',
808
+ };
809
+ }
810
+
811
+ static types(): { [key: string]: any } {
812
+ return {
813
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
814
+ statusCode: 'number',
815
+ body: CreateUserProvisioningResponseBody,
816
+ };
817
+ }
818
+
819
+ constructor(map?: { [key: string]: any }) {
820
+ super(map);
821
+ }
822
+ }
823
+
737
824
  export class DeleteAccessAssignmentRequest extends $tea.Model {
738
825
  accessConfigurationId?: string;
739
826
  deprovisionStrategy?: string;
@@ -1217,6 +1304,75 @@ export class DeleteUserResponse extends $tea.Model {
1217
1304
  }
1218
1305
  }
1219
1306
 
1307
+ export class DeleteUserProvisioningRequest extends $tea.Model {
1308
+ deletionStrategy?: string;
1309
+ directoryId?: string;
1310
+ userProvisioningId?: string;
1311
+ static names(): { [key: string]: string } {
1312
+ return {
1313
+ deletionStrategy: 'DeletionStrategy',
1314
+ directoryId: 'DirectoryId',
1315
+ userProvisioningId: 'UserProvisioningId',
1316
+ };
1317
+ }
1318
+
1319
+ static types(): { [key: string]: any } {
1320
+ return {
1321
+ deletionStrategy: 'string',
1322
+ directoryId: 'string',
1323
+ userProvisioningId: 'string',
1324
+ };
1325
+ }
1326
+
1327
+ constructor(map?: { [key: string]: any }) {
1328
+ super(map);
1329
+ }
1330
+ }
1331
+
1332
+ export class DeleteUserProvisioningResponseBody extends $tea.Model {
1333
+ requestId?: string;
1334
+ static names(): { [key: string]: string } {
1335
+ return {
1336
+ requestId: 'RequestId',
1337
+ };
1338
+ }
1339
+
1340
+ static types(): { [key: string]: any } {
1341
+ return {
1342
+ requestId: 'string',
1343
+ };
1344
+ }
1345
+
1346
+ constructor(map?: { [key: string]: any }) {
1347
+ super(map);
1348
+ }
1349
+ }
1350
+
1351
+ export class DeleteUserProvisioningResponse extends $tea.Model {
1352
+ headers: { [key: string]: string };
1353
+ statusCode: number;
1354
+ body: DeleteUserProvisioningResponseBody;
1355
+ static names(): { [key: string]: string } {
1356
+ return {
1357
+ headers: 'headers',
1358
+ statusCode: 'statusCode',
1359
+ body: 'body',
1360
+ };
1361
+ }
1362
+
1363
+ static types(): { [key: string]: any } {
1364
+ return {
1365
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
1366
+ statusCode: 'number',
1367
+ body: DeleteUserProvisioningResponseBody,
1368
+ };
1369
+ }
1370
+
1371
+ constructor(map?: { [key: string]: any }) {
1372
+ super(map);
1373
+ }
1374
+ }
1375
+
1220
1376
  export class DeprovisionAccessConfigurationRequest extends $tea.Model {
1221
1377
  accessConfigurationId?: string;
1222
1378
  directoryId?: string;
@@ -1782,6 +1938,72 @@ export class GetGroupResponse extends $tea.Model {
1782
1938
  }
1783
1939
  }
1784
1940
 
1941
+ export class GetMFAAuthenticationSettingInfoRequest extends $tea.Model {
1942
+ directoryId?: string;
1943
+ static names(): { [key: string]: string } {
1944
+ return {
1945
+ directoryId: 'DirectoryId',
1946
+ };
1947
+ }
1948
+
1949
+ static types(): { [key: string]: any } {
1950
+ return {
1951
+ directoryId: 'string',
1952
+ };
1953
+ }
1954
+
1955
+ constructor(map?: { [key: string]: any }) {
1956
+ super(map);
1957
+ }
1958
+ }
1959
+
1960
+ export class GetMFAAuthenticationSettingInfoResponseBody extends $tea.Model {
1961
+ MFAAuthenticationSettingInfo?: GetMFAAuthenticationSettingInfoResponseBodyMFAAuthenticationSettingInfo;
1962
+ requestId?: string;
1963
+ static names(): { [key: string]: string } {
1964
+ return {
1965
+ MFAAuthenticationSettingInfo: 'MFAAuthenticationSettingInfo',
1966
+ requestId: 'RequestId',
1967
+ };
1968
+ }
1969
+
1970
+ static types(): { [key: string]: any } {
1971
+ return {
1972
+ MFAAuthenticationSettingInfo: GetMFAAuthenticationSettingInfoResponseBodyMFAAuthenticationSettingInfo,
1973
+ requestId: 'string',
1974
+ };
1975
+ }
1976
+
1977
+ constructor(map?: { [key: string]: any }) {
1978
+ super(map);
1979
+ }
1980
+ }
1981
+
1982
+ export class GetMFAAuthenticationSettingInfoResponse extends $tea.Model {
1983
+ headers: { [key: string]: string };
1984
+ statusCode: number;
1985
+ body: GetMFAAuthenticationSettingInfoResponseBody;
1986
+ static names(): { [key: string]: string } {
1987
+ return {
1988
+ headers: 'headers',
1989
+ statusCode: 'statusCode',
1990
+ body: 'body',
1991
+ };
1992
+ }
1993
+
1994
+ static types(): { [key: string]: any } {
1995
+ return {
1996
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
1997
+ statusCode: 'number',
1998
+ body: GetMFAAuthenticationSettingInfoResponseBody,
1999
+ };
2000
+ }
2001
+
2002
+ constructor(map?: { [key: string]: any }) {
2003
+ super(map);
2004
+ }
2005
+ }
2006
+
1785
2007
  export class GetMFAAuthenticationSettingsRequest extends $tea.Model {
1786
2008
  directoryId?: string;
1787
2009
  static names(): { [key: string]: string } {
@@ -2303,6 +2525,75 @@ export class GetUserMFAAuthenticationSettingsResponse extends $tea.Model {
2303
2525
  }
2304
2526
  }
2305
2527
 
2528
+ export class GetUserProvisioningRequest extends $tea.Model {
2529
+ directoryId?: string;
2530
+ userProvisioningId?: string;
2531
+ static names(): { [key: string]: string } {
2532
+ return {
2533
+ directoryId: 'DirectoryId',
2534
+ userProvisioningId: 'UserProvisioningId',
2535
+ };
2536
+ }
2537
+
2538
+ static types(): { [key: string]: any } {
2539
+ return {
2540
+ directoryId: 'string',
2541
+ userProvisioningId: 'string',
2542
+ };
2543
+ }
2544
+
2545
+ constructor(map?: { [key: string]: any }) {
2546
+ super(map);
2547
+ }
2548
+ }
2549
+
2550
+ export class GetUserProvisioningResponseBody extends $tea.Model {
2551
+ requestId?: string;
2552
+ userProvisioning?: GetUserProvisioningResponseBodyUserProvisioning;
2553
+ static names(): { [key: string]: string } {
2554
+ return {
2555
+ requestId: 'RequestId',
2556
+ userProvisioning: 'UserProvisioning',
2557
+ };
2558
+ }
2559
+
2560
+ static types(): { [key: string]: any } {
2561
+ return {
2562
+ requestId: 'string',
2563
+ userProvisioning: GetUserProvisioningResponseBodyUserProvisioning,
2564
+ };
2565
+ }
2566
+
2567
+ constructor(map?: { [key: string]: any }) {
2568
+ super(map);
2569
+ }
2570
+ }
2571
+
2572
+ export class GetUserProvisioningResponse extends $tea.Model {
2573
+ headers: { [key: string]: string };
2574
+ statusCode: number;
2575
+ body: GetUserProvisioningResponseBody;
2576
+ static names(): { [key: string]: string } {
2577
+ return {
2578
+ headers: 'headers',
2579
+ statusCode: 'statusCode',
2580
+ body: 'body',
2581
+ };
2582
+ }
2583
+
2584
+ static types(): { [key: string]: any } {
2585
+ return {
2586
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
2587
+ statusCode: 'number',
2588
+ body: GetUserProvisioningResponseBody,
2589
+ };
2590
+ }
2591
+
2592
+ constructor(map?: { [key: string]: any }) {
2593
+ super(map);
2594
+ }
2595
+ }
2596
+
2306
2597
  export class ListAccessAssignmentsRequest extends $tea.Model {
2307
2598
  accessConfigurationId?: string;
2308
2599
  directoryId?: string;
@@ -3295,17 +3586,113 @@ export class ListTasksResponse extends $tea.Model {
3295
3586
  }
3296
3587
  }
3297
3588
 
3298
- export class ListUsersRequest extends $tea.Model {
3589
+ export class ListUserProvisioningsRequest extends $tea.Model {
3299
3590
  directoryId?: string;
3300
- filter?: string;
3301
3591
  maxResults?: number;
3302
3592
  nextToken?: string;
3303
- provisionType?: string;
3304
- status?: string;
3593
+ principalId?: string;
3594
+ principalType?: string;
3595
+ targetId?: string;
3596
+ targetType?: string;
3305
3597
  static names(): { [key: string]: string } {
3306
3598
  return {
3307
3599
  directoryId: 'DirectoryId',
3308
- filter: 'Filter',
3600
+ maxResults: 'MaxResults',
3601
+ nextToken: 'NextToken',
3602
+ principalId: 'PrincipalId',
3603
+ principalType: 'PrincipalType',
3604
+ targetId: 'TargetId',
3605
+ targetType: 'TargetType',
3606
+ };
3607
+ }
3608
+
3609
+ static types(): { [key: string]: any } {
3610
+ return {
3611
+ directoryId: 'string',
3612
+ maxResults: 'number',
3613
+ nextToken: 'string',
3614
+ principalId: 'string',
3615
+ principalType: 'string',
3616
+ targetId: 'string',
3617
+ targetType: 'string',
3618
+ };
3619
+ }
3620
+
3621
+ constructor(map?: { [key: string]: any }) {
3622
+ super(map);
3623
+ }
3624
+ }
3625
+
3626
+ export class ListUserProvisioningsResponseBody extends $tea.Model {
3627
+ isTruncated?: boolean;
3628
+ maxResults?: number;
3629
+ nextToken?: string;
3630
+ requestId?: string;
3631
+ totalCounts?: number;
3632
+ userProvisionings?: ListUserProvisioningsResponseBodyUserProvisionings[];
3633
+ static names(): { [key: string]: string } {
3634
+ return {
3635
+ isTruncated: 'IsTruncated',
3636
+ maxResults: 'MaxResults',
3637
+ nextToken: 'NextToken',
3638
+ requestId: 'RequestId',
3639
+ totalCounts: 'TotalCounts',
3640
+ userProvisionings: 'UserProvisionings',
3641
+ };
3642
+ }
3643
+
3644
+ static types(): { [key: string]: any } {
3645
+ return {
3646
+ isTruncated: 'boolean',
3647
+ maxResults: 'number',
3648
+ nextToken: 'string',
3649
+ requestId: 'string',
3650
+ totalCounts: 'number',
3651
+ userProvisionings: { 'type': 'array', 'itemType': ListUserProvisioningsResponseBodyUserProvisionings },
3652
+ };
3653
+ }
3654
+
3655
+ constructor(map?: { [key: string]: any }) {
3656
+ super(map);
3657
+ }
3658
+ }
3659
+
3660
+ export class ListUserProvisioningsResponse extends $tea.Model {
3661
+ headers: { [key: string]: string };
3662
+ statusCode: number;
3663
+ body: ListUserProvisioningsResponseBody;
3664
+ static names(): { [key: string]: string } {
3665
+ return {
3666
+ headers: 'headers',
3667
+ statusCode: 'statusCode',
3668
+ body: 'body',
3669
+ };
3670
+ }
3671
+
3672
+ static types(): { [key: string]: any } {
3673
+ return {
3674
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
3675
+ statusCode: 'number',
3676
+ body: ListUserProvisioningsResponseBody,
3677
+ };
3678
+ }
3679
+
3680
+ constructor(map?: { [key: string]: any }) {
3681
+ super(map);
3682
+ }
3683
+ }
3684
+
3685
+ export class ListUsersRequest extends $tea.Model {
3686
+ directoryId?: string;
3687
+ filter?: string;
3688
+ maxResults?: number;
3689
+ nextToken?: string;
3690
+ provisionType?: string;
3691
+ status?: string;
3692
+ static names(): { [key: string]: string } {
3693
+ return {
3694
+ directoryId: 'DirectoryId',
3695
+ filter: 'Filter',
3309
3696
  maxResults: 'MaxResults',
3310
3697
  nextToken: 'NextToken',
3311
3698
  provisionType: 'ProvisionType',
@@ -4552,6 +4939,84 @@ export class UpdateUserMFAAuthenticationSettingsResponse extends $tea.Model {
4552
4939
  }
4553
4940
  }
4554
4941
 
4942
+ export class UpdateUserProvisioningRequest extends $tea.Model {
4943
+ directoryId?: string;
4944
+ newDeletionStrategy?: string;
4945
+ newDescription?: string;
4946
+ newDuplicationStrategy?: string;
4947
+ userProvisioningId?: string;
4948
+ static names(): { [key: string]: string } {
4949
+ return {
4950
+ directoryId: 'DirectoryId',
4951
+ newDeletionStrategy: 'NewDeletionStrategy',
4952
+ newDescription: 'NewDescription',
4953
+ newDuplicationStrategy: 'NewDuplicationStrategy',
4954
+ userProvisioningId: 'UserProvisioningId',
4955
+ };
4956
+ }
4957
+
4958
+ static types(): { [key: string]: any } {
4959
+ return {
4960
+ directoryId: 'string',
4961
+ newDeletionStrategy: 'string',
4962
+ newDescription: 'string',
4963
+ newDuplicationStrategy: 'string',
4964
+ userProvisioningId: 'string',
4965
+ };
4966
+ }
4967
+
4968
+ constructor(map?: { [key: string]: any }) {
4969
+ super(map);
4970
+ }
4971
+ }
4972
+
4973
+ export class UpdateUserProvisioningResponseBody extends $tea.Model {
4974
+ requestId?: string;
4975
+ userProvisioning?: UpdateUserProvisioningResponseBodyUserProvisioning;
4976
+ static names(): { [key: string]: string } {
4977
+ return {
4978
+ requestId: 'RequestId',
4979
+ userProvisioning: 'UserProvisioning',
4980
+ };
4981
+ }
4982
+
4983
+ static types(): { [key: string]: any } {
4984
+ return {
4985
+ requestId: 'string',
4986
+ userProvisioning: UpdateUserProvisioningResponseBodyUserProvisioning,
4987
+ };
4988
+ }
4989
+
4990
+ constructor(map?: { [key: string]: any }) {
4991
+ super(map);
4992
+ }
4993
+ }
4994
+
4995
+ export class UpdateUserProvisioningResponse extends $tea.Model {
4996
+ headers: { [key: string]: string };
4997
+ statusCode: number;
4998
+ body: UpdateUserProvisioningResponseBody;
4999
+ static names(): { [key: string]: string } {
5000
+ return {
5001
+ headers: 'headers',
5002
+ statusCode: 'statusCode',
5003
+ body: 'body',
5004
+ };
5005
+ }
5006
+
5007
+ static types(): { [key: string]: any } {
5008
+ return {
5009
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
5010
+ statusCode: 'number',
5011
+ body: UpdateUserProvisioningResponseBody,
5012
+ };
5013
+ }
5014
+
5015
+ constructor(map?: { [key: string]: any }) {
5016
+ super(map);
5017
+ }
5018
+ }
5019
+
4555
5020
  export class UpdateUserStatusRequest extends $tea.Model {
4556
5021
  directoryId?: string;
4557
5022
  newStatus?: string;
@@ -4867,6 +5332,70 @@ export class CreateUserResponseBodyUser extends $tea.Model {
4867
5332
  }
4868
5333
  }
4869
5334
 
5335
+ export class CreateUserProvisioningResponseBodyUserProvisioning extends $tea.Model {
5336
+ createTime?: string;
5337
+ deletionStrategy?: string;
5338
+ description?: string;
5339
+ directoryId?: string;
5340
+ duplicationStrategy?: string;
5341
+ ownerPk?: string;
5342
+ principalId?: string;
5343
+ principalName?: string;
5344
+ principalType?: string;
5345
+ status?: string;
5346
+ targetId?: string;
5347
+ targetName?: string;
5348
+ targetPath?: string;
5349
+ targetType?: string;
5350
+ updateTime?: string;
5351
+ userProvisioningId?: string;
5352
+ static names(): { [key: string]: string } {
5353
+ return {
5354
+ createTime: 'CreateTime',
5355
+ deletionStrategy: 'DeletionStrategy',
5356
+ description: 'Description',
5357
+ directoryId: 'DirectoryId',
5358
+ duplicationStrategy: 'DuplicationStrategy',
5359
+ ownerPk: 'OwnerPk',
5360
+ principalId: 'PrincipalId',
5361
+ principalName: 'PrincipalName',
5362
+ principalType: 'PrincipalType',
5363
+ status: 'Status',
5364
+ targetId: 'TargetId',
5365
+ targetName: 'TargetName',
5366
+ targetPath: 'TargetPath',
5367
+ targetType: 'TargetType',
5368
+ updateTime: 'UpdateTime',
5369
+ userProvisioningId: 'UserProvisioningId',
5370
+ };
5371
+ }
5372
+
5373
+ static types(): { [key: string]: any } {
5374
+ return {
5375
+ createTime: 'string',
5376
+ deletionStrategy: 'string',
5377
+ description: 'string',
5378
+ directoryId: 'string',
5379
+ duplicationStrategy: 'string',
5380
+ ownerPk: 'string',
5381
+ principalId: 'string',
5382
+ principalName: 'string',
5383
+ principalType: 'string',
5384
+ status: 'string',
5385
+ targetId: 'string',
5386
+ targetName: 'string',
5387
+ targetPath: 'string',
5388
+ targetType: 'string',
5389
+ updateTime: 'string',
5390
+ userProvisioningId: 'string',
5391
+ };
5392
+ }
5393
+
5394
+ constructor(map?: { [key: string]: any }) {
5395
+ super(map);
5396
+ }
5397
+ }
5398
+
4870
5399
  export class DeleteAccessAssignmentResponseBodyTask extends $tea.Model {
4871
5400
  accessConfigurationId?: string;
4872
5401
  accessConfigurationName?: string;
@@ -5080,6 +5609,7 @@ export class GetDirectoryStatisticsResponseBodyDirectoryStatistics extends $tea.
5080
5609
  SCIMServerCredentialCount?: number;
5081
5610
  SCIMSyncEnabled?: boolean;
5082
5611
  SSOEnabled?: boolean;
5612
+ systemPolicyPerAccessConfigurationQuota?: number;
5083
5613
  userCount?: number;
5084
5614
  userQuota?: number;
5085
5615
  static names(): { [key: string]: string } {
@@ -5096,6 +5626,7 @@ export class GetDirectoryStatisticsResponseBodyDirectoryStatistics extends $tea.
5096
5626
  SCIMServerCredentialCount: 'SCIMServerCredentialCount',
5097
5627
  SCIMSyncEnabled: 'SCIMSyncEnabled',
5098
5628
  SSOEnabled: 'SSOEnabled',
5629
+ systemPolicyPerAccessConfigurationQuota: 'SystemPolicyPerAccessConfigurationQuota',
5099
5630
  userCount: 'UserCount',
5100
5631
  userQuota: 'UserQuota',
5101
5632
  };
@@ -5115,6 +5646,7 @@ export class GetDirectoryStatisticsResponseBodyDirectoryStatistics extends $tea.
5115
5646
  SCIMServerCredentialCount: 'number',
5116
5647
  SCIMSyncEnabled: 'boolean',
5117
5648
  SSOEnabled: 'boolean',
5649
+ systemPolicyPerAccessConfigurationQuota: 'number',
5118
5650
  userCount: 'number',
5119
5651
  userQuota: 'number',
5120
5652
  };
@@ -5202,6 +5734,28 @@ export class GetGroupResponseBodyGroup extends $tea.Model {
5202
5734
  }
5203
5735
  }
5204
5736
 
5737
+ export class GetMFAAuthenticationSettingInfoResponseBodyMFAAuthenticationSettingInfo extends $tea.Model {
5738
+ mfaAuthenticationAdvanceSettings?: string;
5739
+ operationForRiskLogin?: string;
5740
+ static names(): { [key: string]: string } {
5741
+ return {
5742
+ mfaAuthenticationAdvanceSettings: 'MfaAuthenticationAdvanceSettings',
5743
+ operationForRiskLogin: 'OperationForRiskLogin',
5744
+ };
5745
+ }
5746
+
5747
+ static types(): { [key: string]: any } {
5748
+ return {
5749
+ mfaAuthenticationAdvanceSettings: 'string',
5750
+ operationForRiskLogin: 'string',
5751
+ };
5752
+ }
5753
+
5754
+ constructor(map?: { [key: string]: any }) {
5755
+ super(map);
5756
+ }
5757
+ }
5758
+
5205
5759
  export class GetServiceStatusResponseBodyServiceStatus extends $tea.Model {
5206
5760
  accountId?: string;
5207
5761
  prerequisiteCheckResult?: string;
@@ -5377,6 +5931,70 @@ export class GetUserResponseBodyUser extends $tea.Model {
5377
5931
  }
5378
5932
  }
5379
5933
 
5934
+ export class GetUserProvisioningResponseBodyUserProvisioning extends $tea.Model {
5935
+ createTime?: string;
5936
+ deletionStrategy?: string;
5937
+ description?: string;
5938
+ directoryId?: string;
5939
+ duplicationStrategy?: string;
5940
+ ownerPk?: string;
5941
+ principalId?: string;
5942
+ principalName?: string;
5943
+ principalType?: string;
5944
+ status?: string;
5945
+ targetId?: string;
5946
+ targetName?: string;
5947
+ targetPath?: string;
5948
+ targetType?: string;
5949
+ updateTime?: string;
5950
+ userProvisioningId?: string;
5951
+ static names(): { [key: string]: string } {
5952
+ return {
5953
+ createTime: 'CreateTime',
5954
+ deletionStrategy: 'DeletionStrategy',
5955
+ description: 'Description',
5956
+ directoryId: 'DirectoryId',
5957
+ duplicationStrategy: 'DuplicationStrategy',
5958
+ ownerPk: 'OwnerPk',
5959
+ principalId: 'PrincipalId',
5960
+ principalName: 'PrincipalName',
5961
+ principalType: 'PrincipalType',
5962
+ status: 'Status',
5963
+ targetId: 'TargetId',
5964
+ targetName: 'TargetName',
5965
+ targetPath: 'TargetPath',
5966
+ targetType: 'TargetType',
5967
+ updateTime: 'UpdateTime',
5968
+ userProvisioningId: 'UserProvisioningId',
5969
+ };
5970
+ }
5971
+
5972
+ static types(): { [key: string]: any } {
5973
+ return {
5974
+ createTime: 'string',
5975
+ deletionStrategy: 'string',
5976
+ description: 'string',
5977
+ directoryId: 'string',
5978
+ duplicationStrategy: 'string',
5979
+ ownerPk: 'string',
5980
+ principalId: 'string',
5981
+ principalName: 'string',
5982
+ principalType: 'string',
5983
+ status: 'string',
5984
+ targetId: 'string',
5985
+ targetName: 'string',
5986
+ targetPath: 'string',
5987
+ targetType: 'string',
5988
+ updateTime: 'string',
5989
+ userProvisioningId: 'string',
5990
+ };
5991
+ }
5992
+
5993
+ constructor(map?: { [key: string]: any }) {
5994
+ super(map);
5995
+ }
5996
+ }
5997
+
5380
5998
  export class ListAccessAssignmentsResponseBodyAccessAssignments extends $tea.Model {
5381
5999
  accessConfigurationId?: string;
5382
6000
  accessConfigurationName?: string;
@@ -5866,6 +6484,70 @@ export class ListTasksResponseBodyTasks extends $tea.Model {
5866
6484
  }
5867
6485
  }
5868
6486
 
6487
+ export class ListUserProvisioningsResponseBodyUserProvisionings extends $tea.Model {
6488
+ createTime?: string;
6489
+ deletionStrategy?: string;
6490
+ description?: string;
6491
+ directoryId?: string;
6492
+ duplicationStrategy?: string;
6493
+ ownerPk?: string;
6494
+ principalId?: string;
6495
+ principalName?: string;
6496
+ principalType?: string;
6497
+ status?: string;
6498
+ targetId?: string;
6499
+ targetName?: string;
6500
+ targetPath?: string;
6501
+ targetType?: string;
6502
+ updateTime?: string;
6503
+ userProvisioningId?: string;
6504
+ static names(): { [key: string]: string } {
6505
+ return {
6506
+ createTime: 'CreateTime',
6507
+ deletionStrategy: 'DeletionStrategy',
6508
+ description: 'Description',
6509
+ directoryId: 'DirectoryId',
6510
+ duplicationStrategy: 'DuplicationStrategy',
6511
+ ownerPk: 'OwnerPk',
6512
+ principalId: 'PrincipalId',
6513
+ principalName: 'PrincipalName',
6514
+ principalType: 'PrincipalType',
6515
+ status: 'Status',
6516
+ targetId: 'TargetId',
6517
+ targetName: 'TargetName',
6518
+ targetPath: 'TargetPath',
6519
+ targetType: 'TargetType',
6520
+ updateTime: 'UpdateTime',
6521
+ userProvisioningId: 'UserProvisioningId',
6522
+ };
6523
+ }
6524
+
6525
+ static types(): { [key: string]: any } {
6526
+ return {
6527
+ createTime: 'string',
6528
+ deletionStrategy: 'string',
6529
+ description: 'string',
6530
+ directoryId: 'string',
6531
+ duplicationStrategy: 'string',
6532
+ ownerPk: 'string',
6533
+ principalId: 'string',
6534
+ principalName: 'string',
6535
+ principalType: 'string',
6536
+ status: 'string',
6537
+ targetId: 'string',
6538
+ targetName: 'string',
6539
+ targetPath: 'string',
6540
+ targetType: 'string',
6541
+ updateTime: 'string',
6542
+ userProvisioningId: 'string',
6543
+ };
6544
+ }
6545
+
6546
+ constructor(map?: { [key: string]: any }) {
6547
+ super(map);
6548
+ }
6549
+ }
6550
+
5869
6551
  export class ListUsersResponseBodyUsers extends $tea.Model {
5870
6552
  createTime?: string;
5871
6553
  description?: string;
@@ -6143,47 +6825,111 @@ export class UpdateSCIMServerCredentialStatusResponseBodySCIMServerCredential ex
6143
6825
  }
6144
6826
  }
6145
6827
 
6146
- export class UpdateUserResponseBodyUser extends $tea.Model {
6828
+ export class UpdateUserResponseBodyUser extends $tea.Model {
6829
+ createTime?: string;
6830
+ description?: string;
6831
+ displayName?: string;
6832
+ email?: string;
6833
+ firstName?: string;
6834
+ lastName?: string;
6835
+ provisionType?: string;
6836
+ status?: string;
6837
+ updateTime?: string;
6838
+ userId?: string;
6839
+ userName?: string;
6840
+ static names(): { [key: string]: string } {
6841
+ return {
6842
+ createTime: 'CreateTime',
6843
+ description: 'Description',
6844
+ displayName: 'DisplayName',
6845
+ email: 'Email',
6846
+ firstName: 'FirstName',
6847
+ lastName: 'LastName',
6848
+ provisionType: 'ProvisionType',
6849
+ status: 'Status',
6850
+ updateTime: 'UpdateTime',
6851
+ userId: 'UserId',
6852
+ userName: 'UserName',
6853
+ };
6854
+ }
6855
+
6856
+ static types(): { [key: string]: any } {
6857
+ return {
6858
+ createTime: 'string',
6859
+ description: 'string',
6860
+ displayName: 'string',
6861
+ email: 'string',
6862
+ firstName: 'string',
6863
+ lastName: 'string',
6864
+ provisionType: 'string',
6865
+ status: 'string',
6866
+ updateTime: 'string',
6867
+ userId: 'string',
6868
+ userName: 'string',
6869
+ };
6870
+ }
6871
+
6872
+ constructor(map?: { [key: string]: any }) {
6873
+ super(map);
6874
+ }
6875
+ }
6876
+
6877
+ export class UpdateUserProvisioningResponseBodyUserProvisioning extends $tea.Model {
6147
6878
  createTime?: string;
6879
+ deletionStrategy?: string;
6148
6880
  description?: string;
6149
- displayName?: string;
6150
- email?: string;
6151
- firstName?: string;
6152
- lastName?: string;
6153
- provisionType?: string;
6881
+ directoryId?: string;
6882
+ duplicationStrategy?: string;
6883
+ ownerPk?: string;
6884
+ principalId?: string;
6885
+ principalName?: string;
6886
+ principalType?: string;
6154
6887
  status?: string;
6888
+ targetId?: string;
6889
+ targetName?: string;
6890
+ targetPath?: string;
6891
+ targetType?: string;
6155
6892
  updateTime?: string;
6156
- userId?: string;
6157
- userName?: string;
6893
+ userProvisioningId?: string;
6158
6894
  static names(): { [key: string]: string } {
6159
6895
  return {
6160
6896
  createTime: 'CreateTime',
6897
+ deletionStrategy: 'DeletionStrategy',
6161
6898
  description: 'Description',
6162
- displayName: 'DisplayName',
6163
- email: 'Email',
6164
- firstName: 'FirstName',
6165
- lastName: 'LastName',
6166
- provisionType: 'ProvisionType',
6899
+ directoryId: 'DirectoryId',
6900
+ duplicationStrategy: 'DuplicationStrategy',
6901
+ ownerPk: 'OwnerPk',
6902
+ principalId: 'PrincipalId',
6903
+ principalName: 'PrincipalName',
6904
+ principalType: 'PrincipalType',
6167
6905
  status: 'Status',
6906
+ targetId: 'TargetId',
6907
+ targetName: 'TargetName',
6908
+ targetPath: 'TargetPath',
6909
+ targetType: 'TargetType',
6168
6910
  updateTime: 'UpdateTime',
6169
- userId: 'UserId',
6170
- userName: 'UserName',
6911
+ userProvisioningId: 'UserProvisioningId',
6171
6912
  };
6172
6913
  }
6173
6914
 
6174
6915
  static types(): { [key: string]: any } {
6175
6916
  return {
6176
6917
  createTime: 'string',
6918
+ deletionStrategy: 'string',
6177
6919
  description: 'string',
6178
- displayName: 'string',
6179
- email: 'string',
6180
- firstName: 'string',
6181
- lastName: 'string',
6182
- provisionType: 'string',
6920
+ directoryId: 'string',
6921
+ duplicationStrategy: 'string',
6922
+ ownerPk: 'string',
6923
+ principalId: 'string',
6924
+ principalName: 'string',
6925
+ principalType: 'string',
6183
6926
  status: 'string',
6927
+ targetId: 'string',
6928
+ targetName: 'string',
6929
+ targetPath: 'string',
6930
+ targetType: 'string',
6184
6931
  updateTime: 'string',
6185
- userId: 'string',
6186
- userName: 'string',
6932
+ userProvisioningId: 'string',
6187
6933
  };
6188
6934
  }
6189
6935
 
@@ -6215,6 +6961,14 @@ export default class Client extends OpenApi {
6215
6961
  return EndpointUtil.getEndpointRules(productId, regionId, endpointRule, network, suffix);
6216
6962
  }
6217
6963
 
6964
+ /**
6965
+ * You can add up to two SAML signing certificates.
6966
+ * This topic provides an example on how to add a SAML signing certificate to the directory `d-00fc2p61****`.
6967
+ *
6968
+ * @param request AddExternalSAMLIdPCertificateRequest
6969
+ * @param runtime runtime options for this request RuntimeOptions
6970
+ * @return AddExternalSAMLIdPCertificateResponse
6971
+ */
6218
6972
  async addExternalSAMLIdPCertificateWithOptions(request: AddExternalSAMLIdPCertificateRequest, runtime: $Util.RuntimeOptions): Promise<AddExternalSAMLIdPCertificateResponse> {
6219
6973
  Util.validateModel(request);
6220
6974
  let query = { };
@@ -6243,11 +6997,25 @@ export default class Client extends OpenApi {
6243
6997
  return $tea.cast<AddExternalSAMLIdPCertificateResponse>(await this.callApi(params, req, runtime), new AddExternalSAMLIdPCertificateResponse({}));
6244
6998
  }
6245
6999
 
7000
+ /**
7001
+ * You can add up to two SAML signing certificates.
7002
+ * This topic provides an example on how to add a SAML signing certificate to the directory `d-00fc2p61****`.
7003
+ *
7004
+ * @param request AddExternalSAMLIdPCertificateRequest
7005
+ * @return AddExternalSAMLIdPCertificateResponse
7006
+ */
6246
7007
  async addExternalSAMLIdPCertificate(request: AddExternalSAMLIdPCertificateRequest): Promise<AddExternalSAMLIdPCertificateResponse> {
6247
7008
  let runtime = new $Util.RuntimeOptions({ });
6248
7009
  return await this.addExternalSAMLIdPCertificateWithOptions(request, runtime);
6249
7010
  }
6250
7011
 
7012
+ /**
7013
+ * This topic provides an example on how to add the system policy `AliyunECSFullAccess` to the access configuration `ac-00jhtfl8thteu6uj****`.
7014
+ *
7015
+ * @param request AddPermissionPolicyToAccessConfigurationRequest
7016
+ * @param runtime runtime options for this request RuntimeOptions
7017
+ * @return AddPermissionPolicyToAccessConfigurationResponse
7018
+ */
6251
7019
  async addPermissionPolicyToAccessConfigurationWithOptions(request: AddPermissionPolicyToAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<AddPermissionPolicyToAccessConfigurationResponse> {
6252
7020
  Util.validateModel(request);
6253
7021
  let query = { };
@@ -6288,11 +7056,25 @@ export default class Client extends OpenApi {
6288
7056
  return $tea.cast<AddPermissionPolicyToAccessConfigurationResponse>(await this.callApi(params, req, runtime), new AddPermissionPolicyToAccessConfigurationResponse({}));
6289
7057
  }
6290
7058
 
7059
+ /**
7060
+ * This topic provides an example on how to add the system policy `AliyunECSFullAccess` to the access configuration `ac-00jhtfl8thteu6uj****`.
7061
+ *
7062
+ * @param request AddPermissionPolicyToAccessConfigurationRequest
7063
+ * @return AddPermissionPolicyToAccessConfigurationResponse
7064
+ */
6291
7065
  async addPermissionPolicyToAccessConfiguration(request: AddPermissionPolicyToAccessConfigurationRequest): Promise<AddPermissionPolicyToAccessConfigurationResponse> {
6292
7066
  let runtime = new $Util.RuntimeOptions({ });
6293
7067
  return await this.addPermissionPolicyToAccessConfigurationWithOptions(request, runtime);
6294
7068
  }
6295
7069
 
7070
+ /**
7071
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot add a user to a group that is synchronized by using SCIM.
7072
+ * This topic provides an example of how to add the user `u-00q8wbq42wiltcrk****` to the group `g-00jqzghi2n3o5hkh****`.
7073
+ *
7074
+ * @param request AddUserToGroupRequest
7075
+ * @param runtime runtime options for this request RuntimeOptions
7076
+ * @return AddUserToGroupResponse
7077
+ */
6296
7078
  async addUserToGroupWithOptions(request: AddUserToGroupRequest, runtime: $Util.RuntimeOptions): Promise<AddUserToGroupResponse> {
6297
7079
  Util.validateModel(request);
6298
7080
  let query = { };
@@ -6325,11 +7107,26 @@ export default class Client extends OpenApi {
6325
7107
  return $tea.cast<AddUserToGroupResponse>(await this.callApi(params, req, runtime), new AddUserToGroupResponse({}));
6326
7108
  }
6327
7109
 
7110
+ /**
7111
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot add a user to a group that is synchronized by using SCIM.
7112
+ * This topic provides an example of how to add the user `u-00q8wbq42wiltcrk****` to the group `g-00jqzghi2n3o5hkh****`.
7113
+ *
7114
+ * @param request AddUserToGroupRequest
7115
+ * @return AddUserToGroupResponse
7116
+ */
6328
7117
  async addUserToGroup(request: AddUserToGroupRequest): Promise<AddUserToGroupResponse> {
6329
7118
  let runtime = new $Util.RuntimeOptions({ });
6330
7119
  return await this.addUserToGroupWithOptions(request, runtime);
6331
7120
  }
6332
7121
 
7122
+ /**
7123
+ * If single sign-on (SSO) logon is disabled, you can clear the configurations of a SAML IdP. If SSO logon is enabled, you cannot clear the configurations.
7124
+ * This topic provides an example on how to clear the configurations of the SAML IdP within the directory `d-00fc2p61****`.
7125
+ *
7126
+ * @param request ClearExternalSAMLIdentityProviderRequest
7127
+ * @param runtime runtime options for this request RuntimeOptions
7128
+ * @return ClearExternalSAMLIdentityProviderResponse
7129
+ */
6333
7130
  async clearExternalSAMLIdentityProviderWithOptions(request: ClearExternalSAMLIdentityProviderRequest, runtime: $Util.RuntimeOptions): Promise<ClearExternalSAMLIdentityProviderResponse> {
6334
7131
  Util.validateModel(request);
6335
7132
  let query = { };
@@ -6354,11 +7151,27 @@ export default class Client extends OpenApi {
6354
7151
  return $tea.cast<ClearExternalSAMLIdentityProviderResponse>(await this.callApi(params, req, runtime), new ClearExternalSAMLIdentityProviderResponse({}));
6355
7152
  }
6356
7153
 
7154
+ /**
7155
+ * If single sign-on (SSO) logon is disabled, you can clear the configurations of a SAML IdP. If SSO logon is enabled, you cannot clear the configurations.
7156
+ * This topic provides an example on how to clear the configurations of the SAML IdP within the directory `d-00fc2p61****`.
7157
+ *
7158
+ * @param request ClearExternalSAMLIdentityProviderRequest
7159
+ * @return ClearExternalSAMLIdentityProviderResponse
7160
+ */
6357
7161
  async clearExternalSAMLIdentityProvider(request: ClearExternalSAMLIdentityProviderRequest): Promise<ClearExternalSAMLIdentityProviderResponse> {
6358
7162
  let runtime = new $Util.RuntimeOptions({ });
6359
7163
  return await this.clearExternalSAMLIdentityProviderWithOptions(request, runtime);
6360
7164
  }
6361
7165
 
7166
+ /**
7167
+ * When you call this operation, an asynchronous task is created. You can call the [GetTask](~~340670~~) operation to query the progress of task execution by using the value of the `TaskId` response parameter.
7168
+ * For more information about how to assign permissions on an account in your resource directory, see [Overview of multi-account authorization](~~266726~~).
7169
+ * This topic provides an example on how to assign access permissions on the account `114240524784****` in your resource directory to the CloudSSO user `u-00q8wbq42wiltcrk****` by using the access configuration `ac-00jhtfl8thteu6uj****`. After the call is successful, the CloudSSO user can access resources within the account in the resource directory.
7170
+ *
7171
+ * @param request CreateAccessAssignmentRequest
7172
+ * @param runtime runtime options for this request RuntimeOptions
7173
+ * @return CreateAccessAssignmentResponse
7174
+ */
6362
7175
  async createAccessAssignmentWithOptions(request: CreateAccessAssignmentRequest, runtime: $Util.RuntimeOptions): Promise<CreateAccessAssignmentResponse> {
6363
7176
  Util.validateModel(request);
6364
7177
  let query = { };
@@ -6403,11 +7216,27 @@ export default class Client extends OpenApi {
6403
7216
  return $tea.cast<CreateAccessAssignmentResponse>(await this.callApi(params, req, runtime), new CreateAccessAssignmentResponse({}));
6404
7217
  }
6405
7218
 
7219
+ /**
7220
+ * When you call this operation, an asynchronous task is created. You can call the [GetTask](~~340670~~) operation to query the progress of task execution by using the value of the `TaskId` response parameter.
7221
+ * For more information about how to assign permissions on an account in your resource directory, see [Overview of multi-account authorization](~~266726~~).
7222
+ * This topic provides an example on how to assign access permissions on the account `114240524784****` in your resource directory to the CloudSSO user `u-00q8wbq42wiltcrk****` by using the access configuration `ac-00jhtfl8thteu6uj****`. After the call is successful, the CloudSSO user can access resources within the account in the resource directory.
7223
+ *
7224
+ * @param request CreateAccessAssignmentRequest
7225
+ * @return CreateAccessAssignmentResponse
7226
+ */
6406
7227
  async createAccessAssignment(request: CreateAccessAssignmentRequest): Promise<CreateAccessAssignmentResponse> {
6407
7228
  let runtime = new $Util.RuntimeOptions({ });
6408
7229
  return await this.createAccessAssignmentWithOptions(request, runtime);
6409
7230
  }
6410
7231
 
7232
+ /**
7233
+ * For more information about access configurations, see [Overview of access configurations](~~266737~~).
7234
+ * This topic provides an example on how to create an access configuration named `ECS-Admin`.
7235
+ *
7236
+ * @param request CreateAccessConfigurationRequest
7237
+ * @param runtime runtime options for this request RuntimeOptions
7238
+ * @return CreateAccessConfigurationResponse
7239
+ */
6411
7240
  async createAccessConfigurationWithOptions(request: CreateAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<CreateAccessConfigurationResponse> {
6412
7241
  Util.validateModel(request);
6413
7242
  let query = { };
@@ -6448,11 +7277,30 @@ export default class Client extends OpenApi {
6448
7277
  return $tea.cast<CreateAccessConfigurationResponse>(await this.callApi(params, req, runtime), new CreateAccessConfigurationResponse({}));
6449
7278
  }
6450
7279
 
7280
+ /**
7281
+ * For more information about access configurations, see [Overview of access configurations](~~266737~~).
7282
+ * This topic provides an example on how to create an access configuration named `ECS-Admin`.
7283
+ *
7284
+ * @param request CreateAccessConfigurationRequest
7285
+ * @return CreateAccessConfigurationResponse
7286
+ */
6451
7287
  async createAccessConfiguration(request: CreateAccessConfigurationRequest): Promise<CreateAccessConfigurationResponse> {
6452
7288
  let runtime = new $Util.RuntimeOptions({ });
6453
7289
  return await this.createAccessConfigurationWithOptions(request, runtime);
6454
7290
  }
6455
7291
 
7292
+ /**
7293
+ * A directory is a CloudSSO instance. Before you can use CloudSSO, you must create a directory. The directory is used to manage all CloudSSO resources.
7294
+ * To create a directory, you must select a region. Alibaba Cloud stores data in the directory only in the region that you select. However, you can deploy Alibaba Cloud resources including Elastic Compute Service (ECS) instances and ApsaraDB RDS instances in other regions. You can also use your cloud account for logons and access the Alibaba Cloud resources in other regions. You can select a region to create a directory based on your security compliance requirements and the geographic location of specific users. If you do not have strict security compliance requirements, we recommend that you select a region that is the closest to the geographical location of the specific users. This way, access to cloud resources is accelerated. You can create the CloudSSO directory in the China (Shanghai), China (Hong Kong), US (Silicon Valley), or Germany (Frankfurt) region.
7295
+ * This topic provides an example on how to create a directory named `example` in the China (Shanghai) region.
7296
+ * ## Limits
7297
+ * - You can create only one directory for a management account.
7298
+ * - If you want to change the region of a directory, you must delete the directory and then create a directory in a different region.
7299
+ *
7300
+ * @param request CreateDirectoryRequest
7301
+ * @param runtime runtime options for this request RuntimeOptions
7302
+ * @return CreateDirectoryResponse
7303
+ */
6456
7304
  async createDirectoryWithOptions(request: CreateDirectoryRequest, runtime: $Util.RuntimeOptions): Promise<CreateDirectoryResponse> {
6457
7305
  Util.validateModel(request);
6458
7306
  let query = { };
@@ -6477,11 +7325,29 @@ export default class Client extends OpenApi {
6477
7325
  return $tea.cast<CreateDirectoryResponse>(await this.callApi(params, req, runtime), new CreateDirectoryResponse({}));
6478
7326
  }
6479
7327
 
7328
+ /**
7329
+ * A directory is a CloudSSO instance. Before you can use CloudSSO, you must create a directory. The directory is used to manage all CloudSSO resources.
7330
+ * To create a directory, you must select a region. Alibaba Cloud stores data in the directory only in the region that you select. However, you can deploy Alibaba Cloud resources including Elastic Compute Service (ECS) instances and ApsaraDB RDS instances in other regions. You can also use your cloud account for logons and access the Alibaba Cloud resources in other regions. You can select a region to create a directory based on your security compliance requirements and the geographic location of specific users. If you do not have strict security compliance requirements, we recommend that you select a region that is the closest to the geographical location of the specific users. This way, access to cloud resources is accelerated. You can create the CloudSSO directory in the China (Shanghai), China (Hong Kong), US (Silicon Valley), or Germany (Frankfurt) region.
7331
+ * This topic provides an example on how to create a directory named `example` in the China (Shanghai) region.
7332
+ * ## Limits
7333
+ * - You can create only one directory for a management account.
7334
+ * - If you want to change the region of a directory, you must delete the directory and then create a directory in a different region.
7335
+ *
7336
+ * @param request CreateDirectoryRequest
7337
+ * @return CreateDirectoryResponse
7338
+ */
6480
7339
  async createDirectory(request: CreateDirectoryRequest): Promise<CreateDirectoryResponse> {
6481
7340
  let runtime = new $Util.RuntimeOptions({ });
6482
7341
  return await this.createDirectoryWithOptions(request, runtime);
6483
7342
  }
6484
7343
 
7344
+ /**
7345
+ * This topic provides an example on how to create a group named `TestGroup`.
7346
+ *
7347
+ * @param request CreateGroupRequest
7348
+ * @param runtime runtime options for this request RuntimeOptions
7349
+ * @return CreateGroupResponse
7350
+ */
6485
7351
  async createGroupWithOptions(request: CreateGroupRequest, runtime: $Util.RuntimeOptions): Promise<CreateGroupResponse> {
6486
7352
  Util.validateModel(request);
6487
7353
  let query = { };
@@ -6514,11 +7380,25 @@ export default class Client extends OpenApi {
6514
7380
  return $tea.cast<CreateGroupResponse>(await this.callApi(params, req, runtime), new CreateGroupResponse({}));
6515
7381
  }
6516
7382
 
7383
+ /**
7384
+ * This topic provides an example on how to create a group named `TestGroup`.
7385
+ *
7386
+ * @param request CreateGroupRequest
7387
+ * @return CreateGroupResponse
7388
+ */
6517
7389
  async createGroup(request: CreateGroupRequest): Promise<CreateGroupResponse> {
6518
7390
  let runtime = new $Util.RuntimeOptions({ });
6519
7391
  return await this.createGroupWithOptions(request, runtime);
6520
7392
  }
6521
7393
 
7394
+ /**
7395
+ * SCIM credentials are required for SCIM synchronization. You can create up to two SCIM credentials.
7396
+ * This topic provides an example on how to create a SCIM credential within the directory `d-00fc2p61****`.
7397
+ *
7398
+ * @param request CreateSCIMServerCredentialRequest
7399
+ * @param runtime runtime options for this request RuntimeOptions
7400
+ * @return CreateSCIMServerCredentialResponse
7401
+ */
6522
7402
  async createSCIMServerCredentialWithOptions(request: CreateSCIMServerCredentialRequest, runtime: $Util.RuntimeOptions): Promise<CreateSCIMServerCredentialResponse> {
6523
7403
  Util.validateModel(request);
6524
7404
  let query = { };
@@ -6543,11 +7423,25 @@ export default class Client extends OpenApi {
6543
7423
  return $tea.cast<CreateSCIMServerCredentialResponse>(await this.callApi(params, req, runtime), new CreateSCIMServerCredentialResponse({}));
6544
7424
  }
6545
7425
 
7426
+ /**
7427
+ * SCIM credentials are required for SCIM synchronization. You can create up to two SCIM credentials.
7428
+ * This topic provides an example on how to create a SCIM credential within the directory `d-00fc2p61****`.
7429
+ *
7430
+ * @param request CreateSCIMServerCredentialRequest
7431
+ * @return CreateSCIMServerCredentialResponse
7432
+ */
6546
7433
  async createSCIMServerCredential(request: CreateSCIMServerCredentialRequest): Promise<CreateSCIMServerCredentialResponse> {
6547
7434
  let runtime = new $Util.RuntimeOptions({ });
6548
7435
  return await this.createSCIMServerCredentialWithOptions(request, runtime);
6549
7436
  }
6550
7437
 
7438
+ /**
7439
+ * This topic provides an example on how to create a user named `Alice`.
7440
+ *
7441
+ * @param request CreateUserRequest
7442
+ * @param runtime runtime options for this request RuntimeOptions
7443
+ * @return CreateUserResponse
7444
+ */
6551
7445
  async createUserWithOptions(request: CreateUserRequest, runtime: $Util.RuntimeOptions): Promise<CreateUserResponse> {
6552
7446
  Util.validateModel(request);
6553
7447
  let query = { };
@@ -6600,11 +7494,82 @@ export default class Client extends OpenApi {
6600
7494
  return $tea.cast<CreateUserResponse>(await this.callApi(params, req, runtime), new CreateUserResponse({}));
6601
7495
  }
6602
7496
 
7497
+ /**
7498
+ * This topic provides an example on how to create a user named `Alice`.
7499
+ *
7500
+ * @param request CreateUserRequest
7501
+ * @return CreateUserResponse
7502
+ */
6603
7503
  async createUser(request: CreateUserRequest): Promise<CreateUserResponse> {
6604
7504
  let runtime = new $Util.RuntimeOptions({ });
6605
7505
  return await this.createUserWithOptions(request, runtime);
6606
7506
  }
6607
7507
 
7508
+ async createUserProvisioningWithOptions(request: CreateUserProvisioningRequest, runtime: $Util.RuntimeOptions): Promise<CreateUserProvisioningResponse> {
7509
+ Util.validateModel(request);
7510
+ let query = { };
7511
+ if (!Util.isUnset(request.deletionStrategy)) {
7512
+ query["DeletionStrategy"] = request.deletionStrategy;
7513
+ }
7514
+
7515
+ if (!Util.isUnset(request.description)) {
7516
+ query["Description"] = request.description;
7517
+ }
7518
+
7519
+ if (!Util.isUnset(request.directoryId)) {
7520
+ query["DirectoryId"] = request.directoryId;
7521
+ }
7522
+
7523
+ if (!Util.isUnset(request.duplicationStrategy)) {
7524
+ query["DuplicationStrategy"] = request.duplicationStrategy;
7525
+ }
7526
+
7527
+ if (!Util.isUnset(request.principalId)) {
7528
+ query["PrincipalId"] = request.principalId;
7529
+ }
7530
+
7531
+ if (!Util.isUnset(request.principalType)) {
7532
+ query["PrincipalType"] = request.principalType;
7533
+ }
7534
+
7535
+ if (!Util.isUnset(request.targetId)) {
7536
+ query["TargetId"] = request.targetId;
7537
+ }
7538
+
7539
+ if (!Util.isUnset(request.targetType)) {
7540
+ query["TargetType"] = request.targetType;
7541
+ }
7542
+
7543
+ let req = new $OpenApi.OpenApiRequest({
7544
+ query: OpenApiUtil.query(query),
7545
+ });
7546
+ let params = new $OpenApi.Params({
7547
+ action: "CreateUserProvisioning",
7548
+ version: "2021-05-15",
7549
+ protocol: "HTTPS",
7550
+ pathname: "/",
7551
+ method: "POST",
7552
+ authType: "AK",
7553
+ style: "RPC",
7554
+ reqBodyType: "formData",
7555
+ bodyType: "json",
7556
+ });
7557
+ return $tea.cast<CreateUserProvisioningResponse>(await this.callApi(params, req, runtime), new CreateUserProvisioningResponse({}));
7558
+ }
7559
+
7560
+ async createUserProvisioning(request: CreateUserProvisioningRequest): Promise<CreateUserProvisioningResponse> {
7561
+ let runtime = new $Util.RuntimeOptions({ });
7562
+ return await this.createUserProvisioningWithOptions(request, runtime);
7563
+ }
7564
+
7565
+ /**
7566
+ * When you call this operation, an asynchronous task is created. You can call the [GetTask](~~340670~~) operation to query the progress of the task based on the value of the `TaskId` response parameter.
7567
+ * This topic provides an example on how to remove the access permissions on the account `114240524784****` in the resource directory from the CloudSSO user `u-00q8wbq42wiltcrk****`. The access permissions are assigned by using the access configuration `ac-00jhtfl8thteu6uj****`.
7568
+ *
7569
+ * @param request DeleteAccessAssignmentRequest
7570
+ * @param runtime runtime options for this request RuntimeOptions
7571
+ * @return DeleteAccessAssignmentResponse
7572
+ */
6608
7573
  async deleteAccessAssignmentWithOptions(request: DeleteAccessAssignmentRequest, runtime: $Util.RuntimeOptions): Promise<DeleteAccessAssignmentResponse> {
6609
7574
  Util.validateModel(request);
6610
7575
  let query = { };
@@ -6653,11 +7618,27 @@ export default class Client extends OpenApi {
6653
7618
  return $tea.cast<DeleteAccessAssignmentResponse>(await this.callApi(params, req, runtime), new DeleteAccessAssignmentResponse({}));
6654
7619
  }
6655
7620
 
7621
+ /**
7622
+ * When you call this operation, an asynchronous task is created. You can call the [GetTask](~~340670~~) operation to query the progress of the task based on the value of the `TaskId` response parameter.
7623
+ * This topic provides an example on how to remove the access permissions on the account `114240524784****` in the resource directory from the CloudSSO user `u-00q8wbq42wiltcrk****`. The access permissions are assigned by using the access configuration `ac-00jhtfl8thteu6uj****`.
7624
+ *
7625
+ * @param request DeleteAccessAssignmentRequest
7626
+ * @return DeleteAccessAssignmentResponse
7627
+ */
6656
7628
  async deleteAccessAssignment(request: DeleteAccessAssignmentRequest): Promise<DeleteAccessAssignmentResponse> {
6657
7629
  let runtime = new $Util.RuntimeOptions({ });
6658
7630
  return await this.deleteAccessAssignmentWithOptions(request, runtime);
6659
7631
  }
6660
7632
 
7633
+ /**
7634
+ * This topic provides an example on how to delete the access configuration whose ID is `ac-001j9mcm3k7335bc****`.
7635
+ * ## Prerequisites
7636
+ * The access configuration that you want to delete is de-provisioned from the accounts in your resource directory. For more information, see [DeprovisionAccessConfiguration](~~338352~~).
7637
+ *
7638
+ * @param request DeleteAccessConfigurationRequest
7639
+ * @param runtime runtime options for this request RuntimeOptions
7640
+ * @return DeleteAccessConfigurationResponse
7641
+ */
6661
7642
  async deleteAccessConfigurationWithOptions(request: DeleteAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<DeleteAccessConfigurationResponse> {
6662
7643
  Util.validateModel(request);
6663
7644
  let query = { };
@@ -6690,11 +7671,34 @@ export default class Client extends OpenApi {
6690
7671
  return $tea.cast<DeleteAccessConfigurationResponse>(await this.callApi(params, req, runtime), new DeleteAccessConfigurationResponse({}));
6691
7672
  }
6692
7673
 
7674
+ /**
7675
+ * This topic provides an example on how to delete the access configuration whose ID is `ac-001j9mcm3k7335bc****`.
7676
+ * ## Prerequisites
7677
+ * The access configuration that you want to delete is de-provisioned from the accounts in your resource directory. For more information, see [DeprovisionAccessConfiguration](~~338352~~).
7678
+ *
7679
+ * @param request DeleteAccessConfigurationRequest
7680
+ * @return DeleteAccessConfigurationResponse
7681
+ */
6693
7682
  async deleteAccessConfiguration(request: DeleteAccessConfigurationRequest): Promise<DeleteAccessConfigurationResponse> {
6694
7683
  let runtime = new $Util.RuntimeOptions({ });
6695
7684
  return await this.deleteAccessConfigurationWithOptions(request, runtime);
6696
7685
  }
6697
7686
 
7687
+ /**
7688
+ * This topic provides an example on how to delete a directory whose ID is `d-00fc2p61****`.
7689
+ * ## Prerequisites
7690
+ * No resources are contained in the directory that you want to delete.
7691
+ * * Access permissions on the accounts in your resource directory are removed from all users and groups. For more information, see [DeleteAccessAssignment](~~338350~~).
7692
+ * * Users are deleted. For more information, see [DeleteUser](~~341671~~).
7693
+ * * Groups are deleted. For more information, see [DeleteGroup](~~341821~~).
7694
+ * * Access configurations are deleted. For more information, see [DeleteAccessConfiguration](~~336907~~).
7695
+ * * System for Cross-domain Identity Management (SCIM) credentials are deleted. For more information, see [DeleteSCIMServerCredential](~~341842~~).
7696
+ * * SSO logon configurations are deleted. For more information, see [ClearExternalSAMLIdentityProvider](~~341573~~).
7697
+ *
7698
+ * @param request DeleteDirectoryRequest
7699
+ * @param runtime runtime options for this request RuntimeOptions
7700
+ * @return DeleteDirectoryResponse
7701
+ */
6698
7702
  async deleteDirectoryWithOptions(request: DeleteDirectoryRequest, runtime: $Util.RuntimeOptions): Promise<DeleteDirectoryResponse> {
6699
7703
  Util.validateModel(request);
6700
7704
  let query = { };
@@ -6719,11 +7723,36 @@ export default class Client extends OpenApi {
6719
7723
  return $tea.cast<DeleteDirectoryResponse>(await this.callApi(params, req, runtime), new DeleteDirectoryResponse({}));
6720
7724
  }
6721
7725
 
7726
+ /**
7727
+ * This topic provides an example on how to delete a directory whose ID is `d-00fc2p61****`.
7728
+ * ## Prerequisites
7729
+ * No resources are contained in the directory that you want to delete.
7730
+ * * Access permissions on the accounts in your resource directory are removed from all users and groups. For more information, see [DeleteAccessAssignment](~~338350~~).
7731
+ * * Users are deleted. For more information, see [DeleteUser](~~341671~~).
7732
+ * * Groups are deleted. For more information, see [DeleteGroup](~~341821~~).
7733
+ * * Access configurations are deleted. For more information, see [DeleteAccessConfiguration](~~336907~~).
7734
+ * * System for Cross-domain Identity Management (SCIM) credentials are deleted. For more information, see [DeleteSCIMServerCredential](~~341842~~).
7735
+ * * SSO logon configurations are deleted. For more information, see [ClearExternalSAMLIdentityProvider](~~341573~~).
7736
+ *
7737
+ * @param request DeleteDirectoryRequest
7738
+ * @return DeleteDirectoryResponse
7739
+ */
6722
7740
  async deleteDirectory(request: DeleteDirectoryRequest): Promise<DeleteDirectoryResponse> {
6723
7741
  let runtime = new $Util.RuntimeOptions({ });
6724
7742
  return await this.deleteDirectoryWithOptions(request, runtime);
6725
7743
  }
6726
7744
 
7745
+ /**
7746
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot delete a group that is synchronized by using SCIM.
7747
+ * ## Prerequisites
7748
+ * The group that you want to delete is not associated with the following resources. If the group is associated with the resources, the deletion fails.
7749
+ * * Users: You must remove users from the group. For more information, see [RemoveUserFromGroup](~~335116~~).
7750
+ * * Access permissions: You must remove the access permissions on the accounts in your resource directory from the group. For more information, see [DeleteAccessAssignment](~~338350~~).
7751
+ *
7752
+ * @param request DeleteGroupRequest
7753
+ * @param runtime runtime options for this request RuntimeOptions
7754
+ * @return DeleteGroupResponse
7755
+ */
6727
7756
  async deleteGroupWithOptions(request: DeleteGroupRequest, runtime: $Util.RuntimeOptions): Promise<DeleteGroupResponse> {
6728
7757
  Util.validateModel(request);
6729
7758
  let query = { };
@@ -6752,11 +7781,28 @@ export default class Client extends OpenApi {
6752
7781
  return $tea.cast<DeleteGroupResponse>(await this.callApi(params, req, runtime), new DeleteGroupResponse({}));
6753
7782
  }
6754
7783
 
7784
+ /**
7785
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot delete a group that is synchronized by using SCIM.
7786
+ * ## Prerequisites
7787
+ * The group that you want to delete is not associated with the following resources. If the group is associated with the resources, the deletion fails.
7788
+ * * Users: You must remove users from the group. For more information, see [RemoveUserFromGroup](~~335116~~).
7789
+ * * Access permissions: You must remove the access permissions on the accounts in your resource directory from the group. For more information, see [DeleteAccessAssignment](~~338350~~).
7790
+ *
7791
+ * @param request DeleteGroupRequest
7792
+ * @return DeleteGroupResponse
7793
+ */
6755
7794
  async deleteGroup(request: DeleteGroupRequest): Promise<DeleteGroupResponse> {
6756
7795
  let runtime = new $Util.RuntimeOptions({ });
6757
7796
  return await this.deleteGroupWithOptions(request, runtime);
6758
7797
  }
6759
7798
 
7799
+ /**
7800
+ * This topic provides an example on how to unbind the MFA device `mfa-00ujhet8pycljj7j****` from the user `u-00q8wbq42wiltcrk****`.
7801
+ *
7802
+ * @param request DeleteMFADeviceForUserRequest
7803
+ * @param runtime runtime options for this request RuntimeOptions
7804
+ * @return DeleteMFADeviceForUserResponse
7805
+ */
6760
7806
  async deleteMFADeviceForUserWithOptions(request: DeleteMFADeviceForUserRequest, runtime: $Util.RuntimeOptions): Promise<DeleteMFADeviceForUserResponse> {
6761
7807
  Util.validateModel(request);
6762
7808
  let query = { };
@@ -6789,11 +7835,25 @@ export default class Client extends OpenApi {
6789
7835
  return $tea.cast<DeleteMFADeviceForUserResponse>(await this.callApi(params, req, runtime), new DeleteMFADeviceForUserResponse({}));
6790
7836
  }
6791
7837
 
7838
+ /**
7839
+ * This topic provides an example on how to unbind the MFA device `mfa-00ujhet8pycljj7j****` from the user `u-00q8wbq42wiltcrk****`.
7840
+ *
7841
+ * @param request DeleteMFADeviceForUserRequest
7842
+ * @return DeleteMFADeviceForUserResponse
7843
+ */
6792
7844
  async deleteMFADeviceForUser(request: DeleteMFADeviceForUserRequest): Promise<DeleteMFADeviceForUserResponse> {
6793
7845
  let runtime = new $Util.RuntimeOptions({ });
6794
7846
  return await this.deleteMFADeviceForUserWithOptions(request, runtime);
6795
7847
  }
6796
7848
 
7849
+ /**
7850
+ * After a SCIM credential is deleted, the synchronization task that uses the SCIM credential fails.
7851
+ * This topic provides an example on how to delete the SCIM credential whose ID is `scimcred-004whl0kvfwcypbi****`.
7852
+ *
7853
+ * @param request DeleteSCIMServerCredentialRequest
7854
+ * @param runtime runtime options for this request RuntimeOptions
7855
+ * @return DeleteSCIMServerCredentialResponse
7856
+ */
6797
7857
  async deleteSCIMServerCredentialWithOptions(request: DeleteSCIMServerCredentialRequest, runtime: $Util.RuntimeOptions): Promise<DeleteSCIMServerCredentialResponse> {
6798
7858
  Util.validateModel(request);
6799
7859
  let query = { };
@@ -6822,11 +7882,30 @@ export default class Client extends OpenApi {
6822
7882
  return $tea.cast<DeleteSCIMServerCredentialResponse>(await this.callApi(params, req, runtime), new DeleteSCIMServerCredentialResponse({}));
6823
7883
  }
6824
7884
 
7885
+ /**
7886
+ * After a SCIM credential is deleted, the synchronization task that uses the SCIM credential fails.
7887
+ * This topic provides an example on how to delete the SCIM credential whose ID is `scimcred-004whl0kvfwcypbi****`.
7888
+ *
7889
+ * @param request DeleteSCIMServerCredentialRequest
7890
+ * @return DeleteSCIMServerCredentialResponse
7891
+ */
6825
7892
  async deleteSCIMServerCredential(request: DeleteSCIMServerCredentialRequest): Promise<DeleteSCIMServerCredentialResponse> {
6826
7893
  let runtime = new $Util.RuntimeOptions({ });
6827
7894
  return await this.deleteSCIMServerCredentialWithOptions(request, runtime);
6828
7895
  }
6829
7896
 
7897
+ /**
7898
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot delete a user that is synchronized by using SCIM.
7899
+ * ## Prerequisites
7900
+ * The user that you want to delete is not associated with the following resources. If the user is associated with the resources, the deletion fails.
7901
+ * * Multi-factor authentication (MFA) devices: You must unbind the MFA devices from the user. For more information, see [DeleteMFADeviceForUser](~~341675~~).
7902
+ * * Access permissions: You must remove the access permissions on the accounts in your resource directory from the user. For more information, see [DeleteAccessAssignment](~~338350~~).
7903
+ * * Groups: You must remove the user from groups. For more information, see [RemoveUserFromGroup](~~335116~~).
7904
+ *
7905
+ * @param request DeleteUserRequest
7906
+ * @param runtime runtime options for this request RuntimeOptions
7907
+ * @return DeleteUserResponse
7908
+ */
6830
7909
  async deleteUserWithOptions(request: DeleteUserRequest, runtime: $Util.RuntimeOptions): Promise<DeleteUserResponse> {
6831
7910
  Util.validateModel(request);
6832
7911
  let query = { };
@@ -6855,11 +7934,67 @@ export default class Client extends OpenApi {
6855
7934
  return $tea.cast<DeleteUserResponse>(await this.callApi(params, req, runtime), new DeleteUserResponse({}));
6856
7935
  }
6857
7936
 
7937
+ /**
7938
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot delete a user that is synchronized by using SCIM.
7939
+ * ## Prerequisites
7940
+ * The user that you want to delete is not associated with the following resources. If the user is associated with the resources, the deletion fails.
7941
+ * * Multi-factor authentication (MFA) devices: You must unbind the MFA devices from the user. For more information, see [DeleteMFADeviceForUser](~~341675~~).
7942
+ * * Access permissions: You must remove the access permissions on the accounts in your resource directory from the user. For more information, see [DeleteAccessAssignment](~~338350~~).
7943
+ * * Groups: You must remove the user from groups. For more information, see [RemoveUserFromGroup](~~335116~~).
7944
+ *
7945
+ * @param request DeleteUserRequest
7946
+ * @return DeleteUserResponse
7947
+ */
6858
7948
  async deleteUser(request: DeleteUserRequest): Promise<DeleteUserResponse> {
6859
7949
  let runtime = new $Util.RuntimeOptions({ });
6860
7950
  return await this.deleteUserWithOptions(request, runtime);
6861
7951
  }
6862
7952
 
7953
+ async deleteUserProvisioningWithOptions(request: DeleteUserProvisioningRequest, runtime: $Util.RuntimeOptions): Promise<DeleteUserProvisioningResponse> {
7954
+ Util.validateModel(request);
7955
+ let query = { };
7956
+ if (!Util.isUnset(request.deletionStrategy)) {
7957
+ query["DeletionStrategy"] = request.deletionStrategy;
7958
+ }
7959
+
7960
+ if (!Util.isUnset(request.directoryId)) {
7961
+ query["DirectoryId"] = request.directoryId;
7962
+ }
7963
+
7964
+ if (!Util.isUnset(request.userProvisioningId)) {
7965
+ query["UserProvisioningId"] = request.userProvisioningId;
7966
+ }
7967
+
7968
+ let req = new $OpenApi.OpenApiRequest({
7969
+ query: OpenApiUtil.query(query),
7970
+ });
7971
+ let params = new $OpenApi.Params({
7972
+ action: "DeleteUserProvisioning",
7973
+ version: "2021-05-15",
7974
+ protocol: "HTTPS",
7975
+ pathname: "/",
7976
+ method: "POST",
7977
+ authType: "AK",
7978
+ style: "RPC",
7979
+ reqBodyType: "formData",
7980
+ bodyType: "json",
7981
+ });
7982
+ return $tea.cast<DeleteUserProvisioningResponse>(await this.callApi(params, req, runtime), new DeleteUserProvisioningResponse({}));
7983
+ }
7984
+
7985
+ async deleteUserProvisioning(request: DeleteUserProvisioningRequest): Promise<DeleteUserProvisioningResponse> {
7986
+ let runtime = new $Util.RuntimeOptions({ });
7987
+ return await this.deleteUserProvisioningWithOptions(request, runtime);
7988
+ }
7989
+
7990
+ /**
7991
+ * When you call this operation, an asynchronous task is automatically created. You can call the [GetTask](~~340670~~) operation to query the progress of the task based on the value of the `TaskId` response parameter.
7992
+ * This topic provides an example on how to de-provision the access configuration `ac-00jhtfl8thteu6uj****` from the account `114240524784****` in your resource directory.
7993
+ *
7994
+ * @param request DeprovisionAccessConfigurationRequest
7995
+ * @param runtime runtime options for this request RuntimeOptions
7996
+ * @return DeprovisionAccessConfigurationResponse
7997
+ */
6863
7998
  async deprovisionAccessConfigurationWithOptions(request: DeprovisionAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<DeprovisionAccessConfigurationResponse> {
6864
7999
  Util.validateModel(request);
6865
8000
  let query = { };
@@ -6896,11 +8031,25 @@ export default class Client extends OpenApi {
6896
8031
  return $tea.cast<DeprovisionAccessConfigurationResponse>(await this.callApi(params, req, runtime), new DeprovisionAccessConfigurationResponse({}));
6897
8032
  }
6898
8033
 
8034
+ /**
8035
+ * When you call this operation, an asynchronous task is automatically created. You can call the [GetTask](~~340670~~) operation to query the progress of the task based on the value of the `TaskId` response parameter.
8036
+ * This topic provides an example on how to de-provision the access configuration `ac-00jhtfl8thteu6uj****` from the account `114240524784****` in your resource directory.
8037
+ *
8038
+ * @param request DeprovisionAccessConfigurationRequest
8039
+ * @return DeprovisionAccessConfigurationResponse
8040
+ */
6899
8041
  async deprovisionAccessConfiguration(request: DeprovisionAccessConfigurationRequest): Promise<DeprovisionAccessConfigurationResponse> {
6900
8042
  let runtime = new $Util.RuntimeOptions({ });
6901
8043
  return await this.deprovisionAccessConfigurationWithOptions(request, runtime);
6902
8044
  }
6903
8045
 
8046
+ /**
8047
+ * If your CloudSSO has no directory, you can disable CloudSSO based on your business requirements. After you disable CloudSSO, you can enable it at any time.
8048
+ *
8049
+ * @param request DisableServiceRequest
8050
+ * @param runtime runtime options for this request RuntimeOptions
8051
+ * @return DisableServiceResponse
8052
+ */
6904
8053
  async disableServiceWithOptions(runtime: $Util.RuntimeOptions): Promise<DisableServiceResponse> {
6905
8054
  let req = new $OpenApi.OpenApiRequest({ });
6906
8055
  let params = new $OpenApi.Params({
@@ -6917,11 +8066,24 @@ export default class Client extends OpenApi {
6917
8066
  return $tea.cast<DisableServiceResponse>(await this.callApi(params, req, runtime), new DisableServiceResponse({}));
6918
8067
  }
6919
8068
 
8069
+ /**
8070
+ * If your CloudSSO has no directory, you can disable CloudSSO based on your business requirements. After you disable CloudSSO, you can enable it at any time.
8071
+ *
8072
+ * @return DisableServiceResponse
8073
+ */
6920
8074
  async disableService(): Promise<DisableServiceResponse> {
6921
8075
  let runtime = new $Util.RuntimeOptions({ });
6922
8076
  return await this.disableServiceWithOptions(runtime);
6923
8077
  }
6924
8078
 
8079
+ /**
8080
+ * You can call this operation only if your account belongs to the management account that is used to enable a resource directory and has permissions to enable CloudSSO. For more information, see [Enable CloudSSO](~~262819~~).
8081
+ * If you call this operation, you agree to the [Alibaba Cloud International Website Product Terms of Service](https://www.alibabacloud.com/help/doc-detail/42416.htm).
8082
+ *
8083
+ * @param request EnableServiceRequest
8084
+ * @param runtime runtime options for this request RuntimeOptions
8085
+ * @return EnableServiceResponse
8086
+ */
6925
8087
  async enableServiceWithOptions(runtime: $Util.RuntimeOptions): Promise<EnableServiceResponse> {
6926
8088
  let req = new $OpenApi.OpenApiRequest({ });
6927
8089
  let params = new $OpenApi.Params({
@@ -6938,11 +8100,24 @@ export default class Client extends OpenApi {
6938
8100
  return $tea.cast<EnableServiceResponse>(await this.callApi(params, req, runtime), new EnableServiceResponse({}));
6939
8101
  }
6940
8102
 
8103
+ /**
8104
+ * You can call this operation only if your account belongs to the management account that is used to enable a resource directory and has permissions to enable CloudSSO. For more information, see [Enable CloudSSO](~~262819~~).
8105
+ * If you call this operation, you agree to the [Alibaba Cloud International Website Product Terms of Service](https://www.alibabacloud.com/help/doc-detail/42416.htm).
8106
+ *
8107
+ * @return EnableServiceResponse
8108
+ */
6941
8109
  async enableService(): Promise<EnableServiceResponse> {
6942
8110
  let runtime = new $Util.RuntimeOptions({ });
6943
8111
  return await this.enableServiceWithOptions(runtime);
6944
8112
  }
6945
8113
 
8114
+ /**
8115
+ * This topic provides an example on how to query the information about the access configuration whose ID is `ac-00ccule7tadaijxc****`.
8116
+ *
8117
+ * @param request GetAccessConfigurationRequest
8118
+ * @param runtime runtime options for this request RuntimeOptions
8119
+ * @return GetAccessConfigurationResponse
8120
+ */
6946
8121
  async getAccessConfigurationWithOptions(request: GetAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<GetAccessConfigurationResponse> {
6947
8122
  Util.validateModel(request);
6948
8123
  let query = { };
@@ -6971,11 +8146,24 @@ export default class Client extends OpenApi {
6971
8146
  return $tea.cast<GetAccessConfigurationResponse>(await this.callApi(params, req, runtime), new GetAccessConfigurationResponse({}));
6972
8147
  }
6973
8148
 
8149
+ /**
8150
+ * This topic provides an example on how to query the information about the access configuration whose ID is `ac-00ccule7tadaijxc****`.
8151
+ *
8152
+ * @param request GetAccessConfigurationRequest
8153
+ * @return GetAccessConfigurationResponse
8154
+ */
6974
8155
  async getAccessConfiguration(request: GetAccessConfigurationRequest): Promise<GetAccessConfigurationResponse> {
6975
8156
  let runtime = new $Util.RuntimeOptions({ });
6976
8157
  return await this.getAccessConfigurationWithOptions(request, runtime);
6977
8158
  }
6978
8159
 
8160
+ /**
8161
+ * This topic provides an example on how to query information about the directory whose ID is `d-00fc2p61****`.
8162
+ *
8163
+ * @param request GetDirectoryRequest
8164
+ * @param runtime runtime options for this request RuntimeOptions
8165
+ * @return GetDirectoryResponse
8166
+ */
6979
8167
  async getDirectoryWithOptions(request: GetDirectoryRequest, runtime: $Util.RuntimeOptions): Promise<GetDirectoryResponse> {
6980
8168
  Util.validateModel(request);
6981
8169
  let query = { };
@@ -7000,11 +8188,25 @@ export default class Client extends OpenApi {
7000
8188
  return $tea.cast<GetDirectoryResponse>(await this.callApi(params, req, runtime), new GetDirectoryResponse({}));
7001
8189
  }
7002
8190
 
8191
+ /**
8192
+ * This topic provides an example on how to query information about the directory whose ID is `d-00fc2p61****`.
8193
+ *
8194
+ * @param request GetDirectoryRequest
8195
+ * @return GetDirectoryResponse
8196
+ */
7003
8197
  async getDirectory(request: GetDirectoryRequest): Promise<GetDirectoryResponse> {
7004
8198
  let runtime = new $Util.RuntimeOptions({ });
7005
8199
  return await this.getDirectoryWithOptions(request, runtime);
7006
8200
  }
7007
8201
 
8202
+ /**
8203
+ * During SAML 2.0-based single sign-on (SSO) logon, CloudSSO is an SP, and the identity management system of an enterprise is an identity provider (IdP).
8204
+ * This topic provides an example on how to query the information about the SP within the directory `d-00fc2p61****`.
8205
+ *
8206
+ * @param request GetDirectorySAMLServiceProviderInfoRequest
8207
+ * @param runtime runtime options for this request RuntimeOptions
8208
+ * @return GetDirectorySAMLServiceProviderInfoResponse
8209
+ */
7008
8210
  async getDirectorySAMLServiceProviderInfoWithOptions(request: GetDirectorySAMLServiceProviderInfoRequest, runtime: $Util.RuntimeOptions): Promise<GetDirectorySAMLServiceProviderInfoResponse> {
7009
8211
  Util.validateModel(request);
7010
8212
  let query = { };
@@ -7029,11 +8231,28 @@ export default class Client extends OpenApi {
7029
8231
  return $tea.cast<GetDirectorySAMLServiceProviderInfoResponse>(await this.callApi(params, req, runtime), new GetDirectorySAMLServiceProviderInfoResponse({}));
7030
8232
  }
7031
8233
 
8234
+ /**
8235
+ * During SAML 2.0-based single sign-on (SSO) logon, CloudSSO is an SP, and the identity management system of an enterprise is an identity provider (IdP).
8236
+ * This topic provides an example on how to query the information about the SP within the directory `d-00fc2p61****`.
8237
+ *
8238
+ * @param request GetDirectorySAMLServiceProviderInfoRequest
8239
+ * @return GetDirectorySAMLServiceProviderInfoResponse
8240
+ */
7032
8241
  async getDirectorySAMLServiceProviderInfo(request: GetDirectorySAMLServiceProviderInfoRequest): Promise<GetDirectorySAMLServiceProviderInfoResponse> {
7033
8242
  let runtime = new $Util.RuntimeOptions({ });
7034
8243
  return await this.getDirectorySAMLServiceProviderInfoWithOptions(request, runtime);
7035
8244
  }
7036
8245
 
8246
+ /**
8247
+ * ### [](#)
8248
+ * This topic provides an example on how to query the statistics of a directory whose ID is `d-00fc2p61****`. The statistics include the number of users, quota for users, number of groups, quota for groups, number of access configurations, quota for access configurations, quota for system policies that can be configured for an access configuration, number of access permissions that are assigned, number of System for Cross-domain Identity Management (SCIM) credentials, number of asynchronous tasks, status of single sign-on (SSO), and status of SCIM synchronization.
8249
+ * ### [](#qps)Limit
8250
+ * You can call this operation up to 100 times per second per account. This operation is globally limited to 100 times per second across all accounts. If the number of the calls per second exceeds a limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limits when you call this operation.
8251
+ *
8252
+ * @param request GetDirectoryStatisticsRequest
8253
+ * @param runtime runtime options for this request RuntimeOptions
8254
+ * @return GetDirectoryStatisticsResponse
8255
+ */
7037
8256
  async getDirectoryStatisticsWithOptions(request: GetDirectoryStatisticsRequest, runtime: $Util.RuntimeOptions): Promise<GetDirectoryStatisticsResponse> {
7038
8257
  Util.validateModel(request);
7039
8258
  let query = { };
@@ -7058,11 +8277,27 @@ export default class Client extends OpenApi {
7058
8277
  return $tea.cast<GetDirectoryStatisticsResponse>(await this.callApi(params, req, runtime), new GetDirectoryStatisticsResponse({}));
7059
8278
  }
7060
8279
 
8280
+ /**
8281
+ * ### [](#)
8282
+ * This topic provides an example on how to query the statistics of a directory whose ID is `d-00fc2p61****`. The statistics include the number of users, quota for users, number of groups, quota for groups, number of access configurations, quota for access configurations, quota for system policies that can be configured for an access configuration, number of access permissions that are assigned, number of System for Cross-domain Identity Management (SCIM) credentials, number of asynchronous tasks, status of single sign-on (SSO), and status of SCIM synchronization.
8283
+ * ### [](#qps)Limit
8284
+ * You can call this operation up to 100 times per second per account. This operation is globally limited to 100 times per second across all accounts. If the number of the calls per second exceeds a limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limits when you call this operation.
8285
+ *
8286
+ * @param request GetDirectoryStatisticsRequest
8287
+ * @return GetDirectoryStatisticsResponse
8288
+ */
7061
8289
  async getDirectoryStatistics(request: GetDirectoryStatisticsRequest): Promise<GetDirectoryStatisticsResponse> {
7062
8290
  let runtime = new $Util.RuntimeOptions({ });
7063
8291
  return await this.getDirectoryStatisticsWithOptions(request, runtime);
7064
8292
  }
7065
8293
 
8294
+ /**
8295
+ * This topic provides an example on how to query the configurations of the SAML IdP within the directory `d-00fc2p61****`.
8296
+ *
8297
+ * @param request GetExternalSAMLIdentityProviderRequest
8298
+ * @param runtime runtime options for this request RuntimeOptions
8299
+ * @return GetExternalSAMLIdentityProviderResponse
8300
+ */
7066
8301
  async getExternalSAMLIdentityProviderWithOptions(request: GetExternalSAMLIdentityProviderRequest, runtime: $Util.RuntimeOptions): Promise<GetExternalSAMLIdentityProviderResponse> {
7067
8302
  Util.validateModel(request);
7068
8303
  let query = { };
@@ -7087,11 +8322,24 @@ export default class Client extends OpenApi {
7087
8322
  return $tea.cast<GetExternalSAMLIdentityProviderResponse>(await this.callApi(params, req, runtime), new GetExternalSAMLIdentityProviderResponse({}));
7088
8323
  }
7089
8324
 
8325
+ /**
8326
+ * This topic provides an example on how to query the configurations of the SAML IdP within the directory `d-00fc2p61****`.
8327
+ *
8328
+ * @param request GetExternalSAMLIdentityProviderRequest
8329
+ * @return GetExternalSAMLIdentityProviderResponse
8330
+ */
7090
8331
  async getExternalSAMLIdentityProvider(request: GetExternalSAMLIdentityProviderRequest): Promise<GetExternalSAMLIdentityProviderResponse> {
7091
8332
  let runtime = new $Util.RuntimeOptions({ });
7092
8333
  return await this.getExternalSAMLIdentityProviderWithOptions(request, runtime);
7093
8334
  }
7094
8335
 
8336
+ /**
8337
+ * This topic provides an example on how to query the information about the group `g-00jqzghi2n3o5hkh****` in the directory `d-00fc2p61****`.
8338
+ *
8339
+ * @param request GetGroupRequest
8340
+ * @param runtime runtime options for this request RuntimeOptions
8341
+ * @return GetGroupResponse
8342
+ */
7095
8343
  async getGroupWithOptions(request: GetGroupRequest, runtime: $Util.RuntimeOptions): Promise<GetGroupResponse> {
7096
8344
  Util.validateModel(request);
7097
8345
  let query = { };
@@ -7120,11 +8368,69 @@ export default class Client extends OpenApi {
7120
8368
  return $tea.cast<GetGroupResponse>(await this.callApi(params, req, runtime), new GetGroupResponse({}));
7121
8369
  }
7122
8370
 
8371
+ /**
8372
+ * This topic provides an example on how to query the information about the group `g-00jqzghi2n3o5hkh****` in the directory `d-00fc2p61****`.
8373
+ *
8374
+ * @param request GetGroupRequest
8375
+ * @return GetGroupResponse
8376
+ */
7123
8377
  async getGroup(request: GetGroupRequest): Promise<GetGroupResponse> {
7124
8378
  let runtime = new $Util.RuntimeOptions({ });
7125
8379
  return await this.getGroupWithOptions(request, runtime);
7126
8380
  }
7127
8381
 
8382
+ /**
8383
+ * If you enable username-password logon for CloudSSO users, you can also configure MFA for the users.
8384
+ * This topic provides an example on how to query the MFA setting of all CloudSSO users that belong to the directory named `00q8wbq42wiltcrk****`.
8385
+ *
8386
+ * @param request GetMFAAuthenticationSettingInfoRequest
8387
+ * @param runtime runtime options for this request RuntimeOptions
8388
+ * @return GetMFAAuthenticationSettingInfoResponse
8389
+ */
8390
+ async getMFAAuthenticationSettingInfoWithOptions(request: GetMFAAuthenticationSettingInfoRequest, runtime: $Util.RuntimeOptions): Promise<GetMFAAuthenticationSettingInfoResponse> {
8391
+ Util.validateModel(request);
8392
+ let query = { };
8393
+ if (!Util.isUnset(request.directoryId)) {
8394
+ query["DirectoryId"] = request.directoryId;
8395
+ }
8396
+
8397
+ let req = new $OpenApi.OpenApiRequest({
8398
+ query: OpenApiUtil.query(query),
8399
+ });
8400
+ let params = new $OpenApi.Params({
8401
+ action: "GetMFAAuthenticationSettingInfo",
8402
+ version: "2021-05-15",
8403
+ protocol: "HTTPS",
8404
+ pathname: "/",
8405
+ method: "POST",
8406
+ authType: "AK",
8407
+ style: "RPC",
8408
+ reqBodyType: "formData",
8409
+ bodyType: "json",
8410
+ });
8411
+ return $tea.cast<GetMFAAuthenticationSettingInfoResponse>(await this.callApi(params, req, runtime), new GetMFAAuthenticationSettingInfoResponse({}));
8412
+ }
8413
+
8414
+ /**
8415
+ * If you enable username-password logon for CloudSSO users, you can also configure MFA for the users.
8416
+ * This topic provides an example on how to query the MFA setting of all CloudSSO users that belong to the directory named `00q8wbq42wiltcrk****`.
8417
+ *
8418
+ * @param request GetMFAAuthenticationSettingInfoRequest
8419
+ * @return GetMFAAuthenticationSettingInfoResponse
8420
+ */
8421
+ async getMFAAuthenticationSettingInfo(request: GetMFAAuthenticationSettingInfoRequest): Promise<GetMFAAuthenticationSettingInfoResponse> {
8422
+ let runtime = new $Util.RuntimeOptions({ });
8423
+ return await this.getMFAAuthenticationSettingInfoWithOptions(request, runtime);
8424
+ }
8425
+
8426
+ /**
8427
+ * > This operation is no longer maintained and updated. You can call the [GetMFAAuthenticationSettingInfo](~~611286~~) operation to query more detailed information.
8428
+ * This topic provides an example on how to query the MFA setting of the users that belong to the directory named `d-00fc2p61****`. The returned result shows that MFA is enabled for all the users.
8429
+ *
8430
+ * @param request GetMFAAuthenticationSettingsRequest
8431
+ * @param runtime runtime options for this request RuntimeOptions
8432
+ * @return GetMFAAuthenticationSettingsResponse
8433
+ */
7128
8434
  async getMFAAuthenticationSettingsWithOptions(request: GetMFAAuthenticationSettingsRequest, runtime: $Util.RuntimeOptions): Promise<GetMFAAuthenticationSettingsResponse> {
7129
8435
  Util.validateModel(request);
7130
8436
  let query = { };
@@ -7149,11 +8455,25 @@ export default class Client extends OpenApi {
7149
8455
  return $tea.cast<GetMFAAuthenticationSettingsResponse>(await this.callApi(params, req, runtime), new GetMFAAuthenticationSettingsResponse({}));
7150
8456
  }
7151
8457
 
8458
+ /**
8459
+ * > This operation is no longer maintained and updated. You can call the [GetMFAAuthenticationSettingInfo](~~611286~~) operation to query more detailed information.
8460
+ * This topic provides an example on how to query the MFA setting of the users that belong to the directory named `d-00fc2p61****`. The returned result shows that MFA is enabled for all the users.
8461
+ *
8462
+ * @param request GetMFAAuthenticationSettingsRequest
8463
+ * @return GetMFAAuthenticationSettingsResponse
8464
+ */
7152
8465
  async getMFAAuthenticationSettings(request: GetMFAAuthenticationSettingsRequest): Promise<GetMFAAuthenticationSettingsResponse> {
7153
8466
  let runtime = new $Util.RuntimeOptions({ });
7154
8467
  return await this.getMFAAuthenticationSettingsWithOptions(request, runtime);
7155
8468
  }
7156
8469
 
8470
+ /**
8471
+ * This topic provides an example on how to check whether MFA is enabled for users in the directory whose ID is `00fc2p61****`. The returned result shows that MFA is in the Enabled state.
8472
+ *
8473
+ * @param request GetMFAAuthenticationStatusRequest
8474
+ * @param runtime runtime options for this request RuntimeOptions
8475
+ * @return GetMFAAuthenticationStatusResponse
8476
+ */
7157
8477
  async getMFAAuthenticationStatusWithOptions(request: GetMFAAuthenticationStatusRequest, runtime: $Util.RuntimeOptions): Promise<GetMFAAuthenticationStatusResponse> {
7158
8478
  Util.validateModel(request);
7159
8479
  let query = { };
@@ -7178,11 +8498,24 @@ export default class Client extends OpenApi {
7178
8498
  return $tea.cast<GetMFAAuthenticationStatusResponse>(await this.callApi(params, req, runtime), new GetMFAAuthenticationStatusResponse({}));
7179
8499
  }
7180
8500
 
8501
+ /**
8502
+ * This topic provides an example on how to check whether MFA is enabled for users in the directory whose ID is `00fc2p61****`. The returned result shows that MFA is in the Enabled state.
8503
+ *
8504
+ * @param request GetMFAAuthenticationStatusRequest
8505
+ * @return GetMFAAuthenticationStatusResponse
8506
+ */
7181
8507
  async getMFAAuthenticationStatus(request: GetMFAAuthenticationStatusRequest): Promise<GetMFAAuthenticationStatusResponse> {
7182
8508
  let runtime = new $Util.RuntimeOptions({ });
7183
8509
  return await this.getMFAAuthenticationStatusWithOptions(request, runtime);
7184
8510
  }
7185
8511
 
8512
+ /**
8513
+ * This topic provides an example on how to query the status of SCIM synchronization within the directory `d-00fc2p61****`. The returned result shows that SCIM synchronization is in the Enabled state.
8514
+ *
8515
+ * @param request GetSCIMSynchronizationStatusRequest
8516
+ * @param runtime runtime options for this request RuntimeOptions
8517
+ * @return GetSCIMSynchronizationStatusResponse
8518
+ */
7186
8519
  async getSCIMSynchronizationStatusWithOptions(request: GetSCIMSynchronizationStatusRequest, runtime: $Util.RuntimeOptions): Promise<GetSCIMSynchronizationStatusResponse> {
7187
8520
  Util.validateModel(request);
7188
8521
  let query = { };
@@ -7207,6 +8540,12 @@ export default class Client extends OpenApi {
7207
8540
  return $tea.cast<GetSCIMSynchronizationStatusResponse>(await this.callApi(params, req, runtime), new GetSCIMSynchronizationStatusResponse({}));
7208
8541
  }
7209
8542
 
8543
+ /**
8544
+ * This topic provides an example on how to query the status of SCIM synchronization within the directory `d-00fc2p61****`. The returned result shows that SCIM synchronization is in the Enabled state.
8545
+ *
8546
+ * @param request GetSCIMSynchronizationStatusRequest
8547
+ * @return GetSCIMSynchronizationStatusResponse
8548
+ */
7210
8549
  async getSCIMSynchronizationStatus(request: GetSCIMSynchronizationStatusRequest): Promise<GetSCIMSynchronizationStatusResponse> {
7211
8550
  let runtime = new $Util.RuntimeOptions({ });
7212
8551
  return await this.getSCIMSynchronizationStatusWithOptions(request, runtime);
@@ -7233,6 +8572,13 @@ export default class Client extends OpenApi {
7233
8572
  return await this.getServiceStatusWithOptions(runtime);
7234
8573
  }
7235
8574
 
8575
+ /**
8576
+ * This topic provides an example on how to query the information about the task whose ID is `t-shfqw1u1edszvxw5****`.
8577
+ *
8578
+ * @param request GetTaskRequest
8579
+ * @param runtime runtime options for this request RuntimeOptions
8580
+ * @return GetTaskResponse
8581
+ */
7236
8582
  async getTaskWithOptions(request: GetTaskRequest, runtime: $Util.RuntimeOptions): Promise<GetTaskResponse> {
7237
8583
  Util.validateModel(request);
7238
8584
  let query = { };
@@ -7261,11 +8607,25 @@ export default class Client extends OpenApi {
7261
8607
  return $tea.cast<GetTaskResponse>(await this.callApi(params, req, runtime), new GetTaskResponse({}));
7262
8608
  }
7263
8609
 
8610
+ /**
8611
+ * This topic provides an example on how to query the information about the task whose ID is `t-shfqw1u1edszvxw5****`.
8612
+ *
8613
+ * @param request GetTaskRequest
8614
+ * @return GetTaskResponse
8615
+ */
7264
8616
  async getTask(request: GetTaskRequest): Promise<GetTaskResponse> {
7265
8617
  let runtime = new $Util.RuntimeOptions({ });
7266
8618
  return await this.getTaskWithOptions(request, runtime);
7267
8619
  }
7268
8620
 
8621
+ /**
8622
+ * You can call the GetTaskStatus operation to query the status of an asynchronous task. If you want to query more information about an asynchronous task, you can call the [GetTask](~~340670~~) operation.
8623
+ * This topic provides an example on how to query the information about the task whose ID is `t-shfqw1u1edszvxw5****`.
8624
+ *
8625
+ * @param request GetTaskStatusRequest
8626
+ * @param runtime runtime options for this request RuntimeOptions
8627
+ * @return GetTaskStatusResponse
8628
+ */
7269
8629
  async getTaskStatusWithOptions(request: GetTaskStatusRequest, runtime: $Util.RuntimeOptions): Promise<GetTaskStatusResponse> {
7270
8630
  Util.validateModel(request);
7271
8631
  let query = { };
@@ -7294,11 +8654,25 @@ export default class Client extends OpenApi {
7294
8654
  return $tea.cast<GetTaskStatusResponse>(await this.callApi(params, req, runtime), new GetTaskStatusResponse({}));
7295
8655
  }
7296
8656
 
8657
+ /**
8658
+ * You can call the GetTaskStatus operation to query the status of an asynchronous task. If you want to query more information about an asynchronous task, you can call the [GetTask](~~340670~~) operation.
8659
+ * This topic provides an example on how to query the information about the task whose ID is `t-shfqw1u1edszvxw5****`.
8660
+ *
8661
+ * @param request GetTaskStatusRequest
8662
+ * @return GetTaskStatusResponse
8663
+ */
7297
8664
  async getTaskStatus(request: GetTaskStatusRequest): Promise<GetTaskStatusResponse> {
7298
8665
  let runtime = new $Util.RuntimeOptions({ });
7299
8666
  return await this.getTaskStatusWithOptions(request, runtime);
7300
8667
  }
7301
8668
 
8669
+ /**
8670
+ * This topic provides an example on how to query information about the user whose ID is `u-00q8wbq42wiltcrk****` in the `d-00fc2p61****` directory.
8671
+ *
8672
+ * @param request GetUserRequest
8673
+ * @param runtime runtime options for this request RuntimeOptions
8674
+ * @return GetUserResponse
8675
+ */
7302
8676
  async getUserWithOptions(request: GetUserRequest, runtime: $Util.RuntimeOptions): Promise<GetUserResponse> {
7303
8677
  Util.validateModel(request);
7304
8678
  let query = { };
@@ -7327,11 +8701,24 @@ export default class Client extends OpenApi {
7327
8701
  return $tea.cast<GetUserResponse>(await this.callApi(params, req, runtime), new GetUserResponse({}));
7328
8702
  }
7329
8703
 
8704
+ /**
8705
+ * This topic provides an example on how to query information about the user whose ID is `u-00q8wbq42wiltcrk****` in the `d-00fc2p61****` directory.
8706
+ *
8707
+ * @param request GetUserRequest
8708
+ * @return GetUserResponse
8709
+ */
7330
8710
  async getUser(request: GetUserRequest): Promise<GetUserResponse> {
7331
8711
  let runtime = new $Util.RuntimeOptions({ });
7332
8712
  return await this.getUserWithOptions(request, runtime);
7333
8713
  }
7334
8714
 
8715
+ /**
8716
+ * This topic provides an example on how to query the MFA setting of the user named `u-00q8wbq42wiltcrk****`. The returned result shows that MFA is enabled for the user.
8717
+ *
8718
+ * @param request GetUserMFAAuthenticationSettingsRequest
8719
+ * @param runtime runtime options for this request RuntimeOptions
8720
+ * @return GetUserMFAAuthenticationSettingsResponse
8721
+ */
7335
8722
  async getUserMFAAuthenticationSettingsWithOptions(request: GetUserMFAAuthenticationSettingsRequest, runtime: $Util.RuntimeOptions): Promise<GetUserMFAAuthenticationSettingsResponse> {
7336
8723
  Util.validateModel(request);
7337
8724
  let query = { };
@@ -7360,11 +8747,57 @@ export default class Client extends OpenApi {
7360
8747
  return $tea.cast<GetUserMFAAuthenticationSettingsResponse>(await this.callApi(params, req, runtime), new GetUserMFAAuthenticationSettingsResponse({}));
7361
8748
  }
7362
8749
 
8750
+ /**
8751
+ * This topic provides an example on how to query the MFA setting of the user named `u-00q8wbq42wiltcrk****`. The returned result shows that MFA is enabled for the user.
8752
+ *
8753
+ * @param request GetUserMFAAuthenticationSettingsRequest
8754
+ * @return GetUserMFAAuthenticationSettingsResponse
8755
+ */
7363
8756
  async getUserMFAAuthenticationSettings(request: GetUserMFAAuthenticationSettingsRequest): Promise<GetUserMFAAuthenticationSettingsResponse> {
7364
8757
  let runtime = new $Util.RuntimeOptions({ });
7365
8758
  return await this.getUserMFAAuthenticationSettingsWithOptions(request, runtime);
7366
8759
  }
7367
8760
 
8761
+ async getUserProvisioningWithOptions(request: GetUserProvisioningRequest, runtime: $Util.RuntimeOptions): Promise<GetUserProvisioningResponse> {
8762
+ Util.validateModel(request);
8763
+ let query = { };
8764
+ if (!Util.isUnset(request.directoryId)) {
8765
+ query["DirectoryId"] = request.directoryId;
8766
+ }
8767
+
8768
+ if (!Util.isUnset(request.userProvisioningId)) {
8769
+ query["UserProvisioningId"] = request.userProvisioningId;
8770
+ }
8771
+
8772
+ let req = new $OpenApi.OpenApiRequest({
8773
+ query: OpenApiUtil.query(query),
8774
+ });
8775
+ let params = new $OpenApi.Params({
8776
+ action: "GetUserProvisioning",
8777
+ version: "2021-05-15",
8778
+ protocol: "HTTPS",
8779
+ pathname: "/",
8780
+ method: "POST",
8781
+ authType: "AK",
8782
+ style: "RPC",
8783
+ reqBodyType: "formData",
8784
+ bodyType: "json",
8785
+ });
8786
+ return $tea.cast<GetUserProvisioningResponse>(await this.callApi(params, req, runtime), new GetUserProvisioningResponse({}));
8787
+ }
8788
+
8789
+ async getUserProvisioning(request: GetUserProvisioningRequest): Promise<GetUserProvisioningResponse> {
8790
+ let runtime = new $Util.RuntimeOptions({ });
8791
+ return await this.getUserProvisioningWithOptions(request, runtime);
8792
+ }
8793
+
8794
+ /**
8795
+ * This topic provides an example on how to query the assigned access permissions on the account `114240524784****` in your resource directory. The returned result shows that access permissions on the account in your resource directory is assigned to one user.
8796
+ *
8797
+ * @param request ListAccessAssignmentsRequest
8798
+ * @param runtime runtime options for this request RuntimeOptions
8799
+ * @return ListAccessAssignmentsResponse
8800
+ */
7368
8801
  async listAccessAssignmentsWithOptions(request: ListAccessAssignmentsRequest, runtime: $Util.RuntimeOptions): Promise<ListAccessAssignmentsResponse> {
7369
8802
  Util.validateModel(request);
7370
8803
  let query = { };
@@ -7417,11 +8850,24 @@ export default class Client extends OpenApi {
7417
8850
  return $tea.cast<ListAccessAssignmentsResponse>(await this.callApi(params, req, runtime), new ListAccessAssignmentsResponse({}));
7418
8851
  }
7419
8852
 
8853
+ /**
8854
+ * This topic provides an example on how to query the assigned access permissions on the account `114240524784****` in your resource directory. The returned result shows that access permissions on the account in your resource directory is assigned to one user.
8855
+ *
8856
+ * @param request ListAccessAssignmentsRequest
8857
+ * @return ListAccessAssignmentsResponse
8858
+ */
7420
8859
  async listAccessAssignments(request: ListAccessAssignmentsRequest): Promise<ListAccessAssignmentsResponse> {
7421
8860
  let runtime = new $Util.RuntimeOptions({ });
7422
8861
  return await this.listAccessAssignmentsWithOptions(request, runtime);
7423
8862
  }
7424
8863
 
8864
+ /**
8865
+ * This topic provides an example on how to query the accounts for which the access permission `ac-00ccule7tadaijxc****` is provisioned. The returned result shows that the access configuration is provisioned for two accounts in your resource directory.
8866
+ *
8867
+ * @param request ListAccessConfigurationProvisioningsRequest
8868
+ * @param runtime runtime options for this request RuntimeOptions
8869
+ * @return ListAccessConfigurationProvisioningsResponse
8870
+ */
7425
8871
  async listAccessConfigurationProvisioningsWithOptions(request: ListAccessConfigurationProvisioningsRequest, runtime: $Util.RuntimeOptions): Promise<ListAccessConfigurationProvisioningsResponse> {
7426
8872
  Util.validateModel(request);
7427
8873
  let query = { };
@@ -7470,11 +8916,24 @@ export default class Client extends OpenApi {
7470
8916
  return $tea.cast<ListAccessConfigurationProvisioningsResponse>(await this.callApi(params, req, runtime), new ListAccessConfigurationProvisioningsResponse({}));
7471
8917
  }
7472
8918
 
8919
+ /**
8920
+ * This topic provides an example on how to query the accounts for which the access permission `ac-00ccule7tadaijxc****` is provisioned. The returned result shows that the access configuration is provisioned for two accounts in your resource directory.
8921
+ *
8922
+ * @param request ListAccessConfigurationProvisioningsRequest
8923
+ * @return ListAccessConfigurationProvisioningsResponse
8924
+ */
7473
8925
  async listAccessConfigurationProvisionings(request: ListAccessConfigurationProvisioningsRequest): Promise<ListAccessConfigurationProvisioningsResponse> {
7474
8926
  let runtime = new $Util.RuntimeOptions({ });
7475
8927
  return await this.listAccessConfigurationProvisioningsWithOptions(request, runtime);
7476
8928
  }
7477
8929
 
8930
+ /**
8931
+ * This topic provides an example on how to query the access configurations within the directory `d-00fc2p61****`. The returned result shows that the directory contains the `VPC-Admin` and `ECS-Admin` access configurations.
8932
+ *
8933
+ * @param request ListAccessConfigurationsRequest
8934
+ * @param runtime runtime options for this request RuntimeOptions
8935
+ * @return ListAccessConfigurationsResponse
8936
+ */
7478
8937
  async listAccessConfigurationsWithOptions(request: ListAccessConfigurationsRequest, runtime: $Util.RuntimeOptions): Promise<ListAccessConfigurationsResponse> {
7479
8938
  Util.validateModel(request);
7480
8939
  let query = { };
@@ -7515,11 +8974,24 @@ export default class Client extends OpenApi {
7515
8974
  return $tea.cast<ListAccessConfigurationsResponse>(await this.callApi(params, req, runtime), new ListAccessConfigurationsResponse({}));
7516
8975
  }
7517
8976
 
8977
+ /**
8978
+ * This topic provides an example on how to query the access configurations within the directory `d-00fc2p61****`. The returned result shows that the directory contains the `VPC-Admin` and `ECS-Admin` access configurations.
8979
+ *
8980
+ * @param request ListAccessConfigurationsRequest
8981
+ * @return ListAccessConfigurationsResponse
8982
+ */
7518
8983
  async listAccessConfigurations(request: ListAccessConfigurationsRequest): Promise<ListAccessConfigurationsResponse> {
7519
8984
  let runtime = new $Util.RuntimeOptions({ });
7520
8985
  return await this.listAccessConfigurationsWithOptions(request, runtime);
7521
8986
  }
7522
8987
 
8988
+ /**
8989
+ * This topic provides an example on how to query the directories within your Alibaba Cloud account. The returned result shows that only one directory with the ID `d-00fc2p61****` is created within your Alibaba Cloud account.
8990
+ *
8991
+ * @param request ListDirectoriesRequest
8992
+ * @param runtime runtime options for this request RuntimeOptions
8993
+ * @return ListDirectoriesResponse
8994
+ */
7523
8995
  async listDirectoriesWithOptions(runtime: $Util.RuntimeOptions): Promise<ListDirectoriesResponse> {
7524
8996
  let req = new $OpenApi.OpenApiRequest({ });
7525
8997
  let params = new $OpenApi.Params({
@@ -7536,11 +9008,23 @@ export default class Client extends OpenApi {
7536
9008
  return $tea.cast<ListDirectoriesResponse>(await this.callApi(params, req, runtime), new ListDirectoriesResponse({}));
7537
9009
  }
7538
9010
 
9011
+ /**
9012
+ * This topic provides an example on how to query the directories within your Alibaba Cloud account. The returned result shows that only one directory with the ID `d-00fc2p61****` is created within your Alibaba Cloud account.
9013
+ *
9014
+ * @return ListDirectoriesResponse
9015
+ */
7539
9016
  async listDirectories(): Promise<ListDirectoriesResponse> {
7540
9017
  let runtime = new $Util.RuntimeOptions({ });
7541
9018
  return await this.listDirectoriesWithOptions(runtime);
7542
9019
  }
7543
9020
 
9021
+ /**
9022
+ * This topic provides an example on how to query the SAML signing certificates within the directory `d-00fc2p61****`. The returned result shows that the directory contains one SAML signing certificate.
9023
+ *
9024
+ * @param request ListExternalSAMLIdPCertificatesRequest
9025
+ * @param runtime runtime options for this request RuntimeOptions
9026
+ * @return ListExternalSAMLIdPCertificatesResponse
9027
+ */
7544
9028
  async listExternalSAMLIdPCertificatesWithOptions(request: ListExternalSAMLIdPCertificatesRequest, runtime: $Util.RuntimeOptions): Promise<ListExternalSAMLIdPCertificatesResponse> {
7545
9029
  Util.validateModel(request);
7546
9030
  let query = { };
@@ -7565,11 +9049,24 @@ export default class Client extends OpenApi {
7565
9049
  return $tea.cast<ListExternalSAMLIdPCertificatesResponse>(await this.callApi(params, req, runtime), new ListExternalSAMLIdPCertificatesResponse({}));
7566
9050
  }
7567
9051
 
9052
+ /**
9053
+ * This topic provides an example on how to query the SAML signing certificates within the directory `d-00fc2p61****`. The returned result shows that the directory contains one SAML signing certificate.
9054
+ *
9055
+ * @param request ListExternalSAMLIdPCertificatesRequest
9056
+ * @return ListExternalSAMLIdPCertificatesResponse
9057
+ */
7568
9058
  async listExternalSAMLIdPCertificates(request: ListExternalSAMLIdPCertificatesRequest): Promise<ListExternalSAMLIdPCertificatesResponse> {
7569
9059
  let runtime = new $Util.RuntimeOptions({ });
7570
9060
  return await this.listExternalSAMLIdPCertificatesWithOptions(request, runtime);
7571
9061
  }
7572
9062
 
9063
+ /**
9064
+ * This topic provides an example on how to query the users in the group `g-00jqzghi2n3o5hkh****`. The returned result shows that the group contains the user `Alice` and the user `user1`.
9065
+ *
9066
+ * @param request ListGroupMembersRequest
9067
+ * @param runtime runtime options for this request RuntimeOptions
9068
+ * @return ListGroupMembersResponse
9069
+ */
7573
9070
  async listGroupMembersWithOptions(request: ListGroupMembersRequest, runtime: $Util.RuntimeOptions): Promise<ListGroupMembersResponse> {
7574
9071
  Util.validateModel(request);
7575
9072
  let query = { };
@@ -7606,11 +9103,24 @@ export default class Client extends OpenApi {
7606
9103
  return $tea.cast<ListGroupMembersResponse>(await this.callApi(params, req, runtime), new ListGroupMembersResponse({}));
7607
9104
  }
7608
9105
 
9106
+ /**
9107
+ * This topic provides an example on how to query the users in the group `g-00jqzghi2n3o5hkh****`. The returned result shows that the group contains the user `Alice` and the user `user1`.
9108
+ *
9109
+ * @param request ListGroupMembersRequest
9110
+ * @return ListGroupMembersResponse
9111
+ */
7609
9112
  async listGroupMembers(request: ListGroupMembersRequest): Promise<ListGroupMembersResponse> {
7610
9113
  let runtime = new $Util.RuntimeOptions({ });
7611
9114
  return await this.listGroupMembersWithOptions(request, runtime);
7612
9115
  }
7613
9116
 
9117
+ /**
9118
+ * This topic provides an example on how to query the groups in the directory `d-00fc2p61****`. The returned result shows that the directory contains three groups. The groups `group1` and `group2` are synchronized from an external identity provider (IdP). The group `TestGroup` is manually created in CloudSSO.
9119
+ *
9120
+ * @param request ListGroupsRequest
9121
+ * @param runtime runtime options for this request RuntimeOptions
9122
+ * @return ListGroupsResponse
9123
+ */
7614
9124
  async listGroupsWithOptions(request: ListGroupsRequest, runtime: $Util.RuntimeOptions): Promise<ListGroupsResponse> {
7615
9125
  Util.validateModel(request);
7616
9126
  let query = { };
@@ -7651,11 +9161,24 @@ export default class Client extends OpenApi {
7651
9161
  return $tea.cast<ListGroupsResponse>(await this.callApi(params, req, runtime), new ListGroupsResponse({}));
7652
9162
  }
7653
9163
 
9164
+ /**
9165
+ * This topic provides an example on how to query the groups in the directory `d-00fc2p61****`. The returned result shows that the directory contains three groups. The groups `group1` and `group2` are synchronized from an external identity provider (IdP). The group `TestGroup` is manually created in CloudSSO.
9166
+ *
9167
+ * @param request ListGroupsRequest
9168
+ * @return ListGroupsResponse
9169
+ */
7654
9170
  async listGroups(request: ListGroupsRequest): Promise<ListGroupsResponse> {
7655
9171
  let runtime = new $Util.RuntimeOptions({ });
7656
9172
  return await this.listGroupsWithOptions(request, runtime);
7657
9173
  }
7658
9174
 
9175
+ /**
9176
+ * This topic provides an example on how to query the groups to which the user `u-00q8wbq42wiltcrk****` is added. The returned result shows that the user is added to both the `TestGroup` and the `group1` groups.
9177
+ *
9178
+ * @param request ListJoinedGroupsForUserRequest
9179
+ * @param runtime runtime options for this request RuntimeOptions
9180
+ * @return ListJoinedGroupsForUserResponse
9181
+ */
7659
9182
  async listJoinedGroupsForUserWithOptions(request: ListJoinedGroupsForUserRequest, runtime: $Util.RuntimeOptions): Promise<ListJoinedGroupsForUserResponse> {
7660
9183
  Util.validateModel(request);
7661
9184
  let query = { };
@@ -7692,11 +9215,24 @@ export default class Client extends OpenApi {
7692
9215
  return $tea.cast<ListJoinedGroupsForUserResponse>(await this.callApi(params, req, runtime), new ListJoinedGroupsForUserResponse({}));
7693
9216
  }
7694
9217
 
9218
+ /**
9219
+ * This topic provides an example on how to query the groups to which the user `u-00q8wbq42wiltcrk****` is added. The returned result shows that the user is added to both the `TestGroup` and the `group1` groups.
9220
+ *
9221
+ * @param request ListJoinedGroupsForUserRequest
9222
+ * @return ListJoinedGroupsForUserResponse
9223
+ */
7695
9224
  async listJoinedGroupsForUser(request: ListJoinedGroupsForUserRequest): Promise<ListJoinedGroupsForUserResponse> {
7696
9225
  let runtime = new $Util.RuntimeOptions({ });
7697
9226
  return await this.listJoinedGroupsForUserWithOptions(request, runtime);
7698
9227
  }
7699
9228
 
9229
+ /**
9230
+ * This topic provides an example on how to query the MFA devices that are bound to the user `u-00q8wbq42wiltcrk****`. The returned result shows that the MFA device named `Alice-MFA1` is bound to the user.
9231
+ *
9232
+ * @param request ListMFADevicesForUserRequest
9233
+ * @param runtime runtime options for this request RuntimeOptions
9234
+ * @return ListMFADevicesForUserResponse
9235
+ */
7700
9236
  async listMFADevicesForUserWithOptions(request: ListMFADevicesForUserRequest, runtime: $Util.RuntimeOptions): Promise<ListMFADevicesForUserResponse> {
7701
9237
  Util.validateModel(request);
7702
9238
  let query = { };
@@ -7725,11 +9261,24 @@ export default class Client extends OpenApi {
7725
9261
  return $tea.cast<ListMFADevicesForUserResponse>(await this.callApi(params, req, runtime), new ListMFADevicesForUserResponse({}));
7726
9262
  }
7727
9263
 
9264
+ /**
9265
+ * This topic provides an example on how to query the MFA devices that are bound to the user `u-00q8wbq42wiltcrk****`. The returned result shows that the MFA device named `Alice-MFA1` is bound to the user.
9266
+ *
9267
+ * @param request ListMFADevicesForUserRequest
9268
+ * @return ListMFADevicesForUserResponse
9269
+ */
7728
9270
  async listMFADevicesForUser(request: ListMFADevicesForUserRequest): Promise<ListMFADevicesForUserResponse> {
7729
9271
  let runtime = new $Util.RuntimeOptions({ });
7730
9272
  return await this.listMFADevicesForUserWithOptions(request, runtime);
7731
9273
  }
7732
9274
 
9275
+ /**
9276
+ * This topic provides an example on how to query the policies that are created for the access configuration `ac-00jhtfl8thteu6uj****`. The returned result shows that the access configuration contains one system policy and one inline policy.
9277
+ *
9278
+ * @param request ListPermissionPoliciesInAccessConfigurationRequest
9279
+ * @param runtime runtime options for this request RuntimeOptions
9280
+ * @return ListPermissionPoliciesInAccessConfigurationResponse
9281
+ */
7733
9282
  async listPermissionPoliciesInAccessConfigurationWithOptions(request: ListPermissionPoliciesInAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<ListPermissionPoliciesInAccessConfigurationResponse> {
7734
9283
  Util.validateModel(request);
7735
9284
  let query = { };
@@ -7762,11 +9311,24 @@ export default class Client extends OpenApi {
7762
9311
  return $tea.cast<ListPermissionPoliciesInAccessConfigurationResponse>(await this.callApi(params, req, runtime), new ListPermissionPoliciesInAccessConfigurationResponse({}));
7763
9312
  }
7764
9313
 
9314
+ /**
9315
+ * This topic provides an example on how to query the policies that are created for the access configuration `ac-00jhtfl8thteu6uj****`. The returned result shows that the access configuration contains one system policy and one inline policy.
9316
+ *
9317
+ * @param request ListPermissionPoliciesInAccessConfigurationRequest
9318
+ * @return ListPermissionPoliciesInAccessConfigurationResponse
9319
+ */
7765
9320
  async listPermissionPoliciesInAccessConfiguration(request: ListPermissionPoliciesInAccessConfigurationRequest): Promise<ListPermissionPoliciesInAccessConfigurationResponse> {
7766
9321
  let runtime = new $Util.RuntimeOptions({ });
7767
9322
  return await this.listPermissionPoliciesInAccessConfigurationWithOptions(request, runtime);
7768
9323
  }
7769
9324
 
9325
+ /**
9326
+ * This topic provides an example on how to query the SCIM credentials within the `d-00fc2p61****` directory.
9327
+ *
9328
+ * @param request ListSCIMServerCredentialsRequest
9329
+ * @param runtime runtime options for this request RuntimeOptions
9330
+ * @return ListSCIMServerCredentialsResponse
9331
+ */
7770
9332
  async listSCIMServerCredentialsWithOptions(request: ListSCIMServerCredentialsRequest, runtime: $Util.RuntimeOptions): Promise<ListSCIMServerCredentialsResponse> {
7771
9333
  Util.validateModel(request);
7772
9334
  let query = { };
@@ -7791,11 +9353,25 @@ export default class Client extends OpenApi {
7791
9353
  return $tea.cast<ListSCIMServerCredentialsResponse>(await this.callApi(params, req, runtime), new ListSCIMServerCredentialsResponse({}));
7792
9354
  }
7793
9355
 
9356
+ /**
9357
+ * This topic provides an example on how to query the SCIM credentials within the `d-00fc2p61****` directory.
9358
+ *
9359
+ * @param request ListSCIMServerCredentialsRequest
9360
+ * @return ListSCIMServerCredentialsResponse
9361
+ */
7794
9362
  async listSCIMServerCredentials(request: ListSCIMServerCredentialsRequest): Promise<ListSCIMServerCredentialsResponse> {
7795
9363
  let runtime = new $Util.RuntimeOptions({ });
7796
9364
  return await this.listSCIMServerCredentialsWithOptions(request, runtime);
7797
9365
  }
7798
9366
 
9367
+ /**
9368
+ * By default, this operation queries the tasks within the previous 24 hours. This operation allows you to query the tasks within a maximum of 7 days. You can specify the start time of the query by using `Filter`.
9369
+ * This topic provides an example on how to query the tasks within the previous 24 hours.
9370
+ *
9371
+ * @param request ListTasksRequest
9372
+ * @param runtime runtime options for this request RuntimeOptions
9373
+ * @return ListTasksResponse
9374
+ */
7799
9375
  async listTasksWithOptions(request: ListTasksRequest, runtime: $Util.RuntimeOptions): Promise<ListTasksResponse> {
7800
9376
  Util.validateModel(request);
7801
9377
  let query = { };
@@ -7860,11 +9436,78 @@ export default class Client extends OpenApi {
7860
9436
  return $tea.cast<ListTasksResponse>(await this.callApi(params, req, runtime), new ListTasksResponse({}));
7861
9437
  }
7862
9438
 
9439
+ /**
9440
+ * By default, this operation queries the tasks within the previous 24 hours. This operation allows you to query the tasks within a maximum of 7 days. You can specify the start time of the query by using `Filter`.
9441
+ * This topic provides an example on how to query the tasks within the previous 24 hours.
9442
+ *
9443
+ * @param request ListTasksRequest
9444
+ * @return ListTasksResponse
9445
+ */
7863
9446
  async listTasks(request: ListTasksRequest): Promise<ListTasksResponse> {
7864
9447
  let runtime = new $Util.RuntimeOptions({ });
7865
9448
  return await this.listTasksWithOptions(request, runtime);
7866
9449
  }
7867
9450
 
9451
+ async listUserProvisioningsWithOptions(request: ListUserProvisioningsRequest, runtime: $Util.RuntimeOptions): Promise<ListUserProvisioningsResponse> {
9452
+ Util.validateModel(request);
9453
+ let query = { };
9454
+ if (!Util.isUnset(request.directoryId)) {
9455
+ query["DirectoryId"] = request.directoryId;
9456
+ }
9457
+
9458
+ if (!Util.isUnset(request.maxResults)) {
9459
+ query["MaxResults"] = request.maxResults;
9460
+ }
9461
+
9462
+ if (!Util.isUnset(request.nextToken)) {
9463
+ query["NextToken"] = request.nextToken;
9464
+ }
9465
+
9466
+ if (!Util.isUnset(request.principalId)) {
9467
+ query["PrincipalId"] = request.principalId;
9468
+ }
9469
+
9470
+ if (!Util.isUnset(request.principalType)) {
9471
+ query["PrincipalType"] = request.principalType;
9472
+ }
9473
+
9474
+ if (!Util.isUnset(request.targetId)) {
9475
+ query["TargetId"] = request.targetId;
9476
+ }
9477
+
9478
+ if (!Util.isUnset(request.targetType)) {
9479
+ query["TargetType"] = request.targetType;
9480
+ }
9481
+
9482
+ let req = new $OpenApi.OpenApiRequest({
9483
+ query: OpenApiUtil.query(query),
9484
+ });
9485
+ let params = new $OpenApi.Params({
9486
+ action: "ListUserProvisionings",
9487
+ version: "2021-05-15",
9488
+ protocol: "HTTPS",
9489
+ pathname: "/",
9490
+ method: "POST",
9491
+ authType: "AK",
9492
+ style: "RPC",
9493
+ reqBodyType: "formData",
9494
+ bodyType: "json",
9495
+ });
9496
+ return $tea.cast<ListUserProvisioningsResponse>(await this.callApi(params, req, runtime), new ListUserProvisioningsResponse({}));
9497
+ }
9498
+
9499
+ async listUserProvisionings(request: ListUserProvisioningsRequest): Promise<ListUserProvisioningsResponse> {
9500
+ let runtime = new $Util.RuntimeOptions({ });
9501
+ return await this.listUserProvisioningsWithOptions(request, runtime);
9502
+ }
9503
+
9504
+ /**
9505
+ * This topic provides an example on how to query users in the `d-00fc2p61****` directory. The returned result shows that the directory contains two users. The user `AliceLee` is synchronized from an external identity provider (IdP). The user `user1` is manually created within CloudSSO.
9506
+ *
9507
+ * @param request ListUsersRequest
9508
+ * @param runtime runtime options for this request RuntimeOptions
9509
+ * @return ListUsersResponse
9510
+ */
7868
9511
  async listUsersWithOptions(request: ListUsersRequest, runtime: $Util.RuntimeOptions): Promise<ListUsersResponse> {
7869
9512
  Util.validateModel(request);
7870
9513
  let query = { };
@@ -7909,11 +9552,25 @@ export default class Client extends OpenApi {
7909
9552
  return $tea.cast<ListUsersResponse>(await this.callApi(params, req, runtime), new ListUsersResponse({}));
7910
9553
  }
7911
9554
 
9555
+ /**
9556
+ * This topic provides an example on how to query users in the `d-00fc2p61****` directory. The returned result shows that the directory contains two users. The user `AliceLee` is synchronized from an external identity provider (IdP). The user `user1` is manually created within CloudSSO.
9557
+ *
9558
+ * @param request ListUsersRequest
9559
+ * @return ListUsersResponse
9560
+ */
7912
9561
  async listUsers(request: ListUsersRequest): Promise<ListUsersResponse> {
7913
9562
  let runtime = new $Util.RuntimeOptions({ });
7914
9563
  return await this.listUsersWithOptions(request, runtime);
7915
9564
  }
7916
9565
 
9566
+ /**
9567
+ * When you call this operation, an asynchronous task is automatically created. You can call the [GetTask](~~340670~~) operation to query the progress of the task based on the value of the `TaskId` response parameter.
9568
+ * This topic provides an example on how to provision the access configuration `ac-00jhtfl8thteu6uj****` for the account `114240524784****` in your resource directory.
9569
+ *
9570
+ * @param request ProvisionAccessConfigurationRequest
9571
+ * @param runtime runtime options for this request RuntimeOptions
9572
+ * @return ProvisionAccessConfigurationResponse
9573
+ */
7917
9574
  async provisionAccessConfigurationWithOptions(request: ProvisionAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<ProvisionAccessConfigurationResponse> {
7918
9575
  Util.validateModel(request);
7919
9576
  let query = { };
@@ -7950,11 +9607,25 @@ export default class Client extends OpenApi {
7950
9607
  return $tea.cast<ProvisionAccessConfigurationResponse>(await this.callApi(params, req, runtime), new ProvisionAccessConfigurationResponse({}));
7951
9608
  }
7952
9609
 
9610
+ /**
9611
+ * When you call this operation, an asynchronous task is automatically created. You can call the [GetTask](~~340670~~) operation to query the progress of the task based on the value of the `TaskId` response parameter.
9612
+ * This topic provides an example on how to provision the access configuration `ac-00jhtfl8thteu6uj****` for the account `114240524784****` in your resource directory.
9613
+ *
9614
+ * @param request ProvisionAccessConfigurationRequest
9615
+ * @return ProvisionAccessConfigurationResponse
9616
+ */
7953
9617
  async provisionAccessConfiguration(request: ProvisionAccessConfigurationRequest): Promise<ProvisionAccessConfigurationResponse> {
7954
9618
  let runtime = new $Util.RuntimeOptions({ });
7955
9619
  return await this.provisionAccessConfigurationWithOptions(request, runtime);
7956
9620
  }
7957
9621
 
9622
+ /**
9623
+ * This topic provides an example on how to remove the SAML signing certificate whose ID is `idp-c-00dt9gnl7fmjaw9c****`.
9624
+ *
9625
+ * @param request RemoveExternalSAMLIdPCertificateRequest
9626
+ * @param runtime runtime options for this request RuntimeOptions
9627
+ * @return RemoveExternalSAMLIdPCertificateResponse
9628
+ */
7958
9629
  async removeExternalSAMLIdPCertificateWithOptions(request: RemoveExternalSAMLIdPCertificateRequest, runtime: $Util.RuntimeOptions): Promise<RemoveExternalSAMLIdPCertificateResponse> {
7959
9630
  Util.validateModel(request);
7960
9631
  let query = { };
@@ -7983,11 +9654,25 @@ export default class Client extends OpenApi {
7983
9654
  return $tea.cast<RemoveExternalSAMLIdPCertificateResponse>(await this.callApi(params, req, runtime), new RemoveExternalSAMLIdPCertificateResponse({}));
7984
9655
  }
7985
9656
 
9657
+ /**
9658
+ * This topic provides an example on how to remove the SAML signing certificate whose ID is `idp-c-00dt9gnl7fmjaw9c****`.
9659
+ *
9660
+ * @param request RemoveExternalSAMLIdPCertificateRequest
9661
+ * @return RemoveExternalSAMLIdPCertificateResponse
9662
+ */
7986
9663
  async removeExternalSAMLIdPCertificate(request: RemoveExternalSAMLIdPCertificateRequest): Promise<RemoveExternalSAMLIdPCertificateResponse> {
7987
9664
  let runtime = new $Util.RuntimeOptions({ });
7988
9665
  return await this.removeExternalSAMLIdPCertificateWithOptions(request, runtime);
7989
9666
  }
7990
9667
 
9668
+ /**
9669
+ * After you remove an inline policy from an access configuration, the policy cannot be restored.
9670
+ * This topic provides an example on how to remove the system policy `AliyunECSFullAccess` from the access configuration `ac-00jhtfl8thteu6uj****`.
9671
+ *
9672
+ * @param request RemovePermissionPolicyFromAccessConfigurationRequest
9673
+ * @param runtime runtime options for this request RuntimeOptions
9674
+ * @return RemovePermissionPolicyFromAccessConfigurationResponse
9675
+ */
7991
9676
  async removePermissionPolicyFromAccessConfigurationWithOptions(request: RemovePermissionPolicyFromAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<RemovePermissionPolicyFromAccessConfigurationResponse> {
7992
9677
  Util.validateModel(request);
7993
9678
  let query = { };
@@ -8024,11 +9709,26 @@ export default class Client extends OpenApi {
8024
9709
  return $tea.cast<RemovePermissionPolicyFromAccessConfigurationResponse>(await this.callApi(params, req, runtime), new RemovePermissionPolicyFromAccessConfigurationResponse({}));
8025
9710
  }
8026
9711
 
9712
+ /**
9713
+ * After you remove an inline policy from an access configuration, the policy cannot be restored.
9714
+ * This topic provides an example on how to remove the system policy `AliyunECSFullAccess` from the access configuration `ac-00jhtfl8thteu6uj****`.
9715
+ *
9716
+ * @param request RemovePermissionPolicyFromAccessConfigurationRequest
9717
+ * @return RemovePermissionPolicyFromAccessConfigurationResponse
9718
+ */
8027
9719
  async removePermissionPolicyFromAccessConfiguration(request: RemovePermissionPolicyFromAccessConfigurationRequest): Promise<RemovePermissionPolicyFromAccessConfigurationResponse> {
8028
9720
  let runtime = new $Util.RuntimeOptions({ });
8029
9721
  return await this.removePermissionPolicyFromAccessConfigurationWithOptions(request, runtime);
8030
9722
  }
8031
9723
 
9724
+ /**
9725
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot remove a user from a group that is synchronized by using SCIM.
9726
+ * This topic provides an example on how to remove the user `u-00q8wbq42wiltcrk****` from the group `g-00jqzghi2n3o5hkh****`.
9727
+ *
9728
+ * @param request RemoveUserFromGroupRequest
9729
+ * @param runtime runtime options for this request RuntimeOptions
9730
+ * @return RemoveUserFromGroupResponse
9731
+ */
8032
9732
  async removeUserFromGroupWithOptions(request: RemoveUserFromGroupRequest, runtime: $Util.RuntimeOptions): Promise<RemoveUserFromGroupResponse> {
8033
9733
  Util.validateModel(request);
8034
9734
  let query = { };
@@ -8061,11 +9761,27 @@ export default class Client extends OpenApi {
8061
9761
  return $tea.cast<RemoveUserFromGroupResponse>(await this.callApi(params, req, runtime), new RemoveUserFromGroupResponse({}));
8062
9762
  }
8063
9763
 
9764
+ /**
9765
+ * If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot remove a user from a group that is synchronized by using SCIM.
9766
+ * This topic provides an example on how to remove the user `u-00q8wbq42wiltcrk****` from the group `g-00jqzghi2n3o5hkh****`.
9767
+ *
9768
+ * @param request RemoveUserFromGroupRequest
9769
+ * @return RemoveUserFromGroupResponse
9770
+ */
8064
9771
  async removeUserFromGroup(request: RemoveUserFromGroupRequest): Promise<RemoveUserFromGroupResponse> {
8065
9772
  let runtime = new $Util.RuntimeOptions({ });
8066
9773
  return await this.removeUserFromGroupWithOptions(request, runtime);
8067
9774
  }
8068
9775
 
9776
+ /**
9777
+ * If you forget your password or your password expires or is at risk, you must contact a CloudSSO administrator to reset your password.
9778
+ * > After you enable SSO logon, your password cannot be reset.
9779
+ * This topic provides an example on how to reset the password of the user `u-00q8wbq42wiltcrk****`. The new password is automatically generated by the system.
9780
+ *
9781
+ * @param request ResetUserPasswordRequest
9782
+ * @param runtime runtime options for this request RuntimeOptions
9783
+ * @return ResetUserPasswordResponse
9784
+ */
8069
9785
  async resetUserPasswordWithOptions(request: ResetUserPasswordRequest, runtime: $Util.RuntimeOptions): Promise<ResetUserPasswordResponse> {
8070
9786
  Util.validateModel(request);
8071
9787
  let query = { };
@@ -8106,11 +9822,34 @@ export default class Client extends OpenApi {
8106
9822
  return $tea.cast<ResetUserPasswordResponse>(await this.callApi(params, req, runtime), new ResetUserPasswordResponse({}));
8107
9823
  }
8108
9824
 
9825
+ /**
9826
+ * If you forget your password or your password expires or is at risk, you must contact a CloudSSO administrator to reset your password.
9827
+ * > After you enable SSO logon, your password cannot be reset.
9828
+ * This topic provides an example on how to reset the password of the user `u-00q8wbq42wiltcrk****`. The new password is automatically generated by the system.
9829
+ *
9830
+ * @param request ResetUserPasswordRequest
9831
+ * @return ResetUserPasswordResponse
9832
+ */
8109
9833
  async resetUserPassword(request: ResetUserPasswordRequest): Promise<ResetUserPasswordResponse> {
8110
9834
  let runtime = new $Util.RuntimeOptions({ });
8111
9835
  return await this.resetUserPasswordWithOptions(request, runtime);
8112
9836
  }
8113
9837
 
9838
+ /**
9839
+ * During SAML 2.0-based single sign-on (SSO) logon, CloudSSO is an SP, and the identity management system of an enterprise is an IdP.
9840
+ * You can use one of the following methods to configure a SAML IdP. You can obtain the required metadata file or parameter values from your IdP.
9841
+ * * Use the metadata file. You can specify the `EncodedMetadataDocument` parameter to upload the metadata file.
9842
+ * * Manually configure the IdP. You can manually specify the following parameters for your IdP: `EntityId`, `LoginUrl`, `WantRequestSigned`, and `X509Certificate`.
9843
+ * If you have configured a SAML IdP, the existing configurations are replaced after you call this operation.
9844
+ * * If the IdP is configured by using the metadata file, all existing configurations are replaced with new configurations.
9845
+ * * If the IdP is manually configured, the original parameter values that are different from the new parameter values are replaced.
9846
+ * > If SSO logon is enabled, new configurations immediately take effect. Take note of the impacts on the production environment.
9847
+ * This topic provides an example on how to configure an IdP by using the metadata file within the directory `d-00fc2p61****`.
9848
+ *
9849
+ * @param request SetExternalSAMLIdentityProviderRequest
9850
+ * @param runtime runtime options for this request RuntimeOptions
9851
+ * @return SetExternalSAMLIdentityProviderResponse
9852
+ */
8114
9853
  async setExternalSAMLIdentityProviderWithOptions(request: SetExternalSAMLIdentityProviderRequest, runtime: $Util.RuntimeOptions): Promise<SetExternalSAMLIdentityProviderResponse> {
8115
9854
  Util.validateModel(request);
8116
9855
  let query = { };
@@ -8159,11 +9898,33 @@ export default class Client extends OpenApi {
8159
9898
  return $tea.cast<SetExternalSAMLIdentityProviderResponse>(await this.callApi(params, req, runtime), new SetExternalSAMLIdentityProviderResponse({}));
8160
9899
  }
8161
9900
 
9901
+ /**
9902
+ * During SAML 2.0-based single sign-on (SSO) logon, CloudSSO is an SP, and the identity management system of an enterprise is an IdP.
9903
+ * You can use one of the following methods to configure a SAML IdP. You can obtain the required metadata file or parameter values from your IdP.
9904
+ * * Use the metadata file. You can specify the `EncodedMetadataDocument` parameter to upload the metadata file.
9905
+ * * Manually configure the IdP. You can manually specify the following parameters for your IdP: `EntityId`, `LoginUrl`, `WantRequestSigned`, and `X509Certificate`.
9906
+ * If you have configured a SAML IdP, the existing configurations are replaced after you call this operation.
9907
+ * * If the IdP is configured by using the metadata file, all existing configurations are replaced with new configurations.
9908
+ * * If the IdP is manually configured, the original parameter values that are different from the new parameter values are replaced.
9909
+ * > If SSO logon is enabled, new configurations immediately take effect. Take note of the impacts on the production environment.
9910
+ * This topic provides an example on how to configure an IdP by using the metadata file within the directory `d-00fc2p61****`.
9911
+ *
9912
+ * @param request SetExternalSAMLIdentityProviderRequest
9913
+ * @return SetExternalSAMLIdentityProviderResponse
9914
+ */
8162
9915
  async setExternalSAMLIdentityProvider(request: SetExternalSAMLIdentityProviderRequest): Promise<SetExternalSAMLIdentityProviderResponse> {
8163
9916
  let runtime = new $Util.RuntimeOptions({ });
8164
9917
  return await this.setExternalSAMLIdentityProviderWithOptions(request, runtime);
8165
9918
  }
8166
9919
 
9920
+ /**
9921
+ * If a CloudSSO administrator enables username-password logon for users, CloudSSO automatically enables MFA to improve security. The administrator can call this operation to enable or disable MFA based on the business requirements.
9922
+ * This topic provides an example on how to enable MFA for users.
9923
+ *
9924
+ * @param request SetMFAAuthenticationStatusRequest
9925
+ * @param runtime runtime options for this request RuntimeOptions
9926
+ * @return SetMFAAuthenticationStatusResponse
9927
+ */
8167
9928
  async setMFAAuthenticationStatusWithOptions(request: SetMFAAuthenticationStatusRequest, runtime: $Util.RuntimeOptions): Promise<SetMFAAuthenticationStatusResponse> {
8168
9929
  Util.validateModel(request);
8169
9930
  let query = { };
@@ -8192,11 +9953,28 @@ export default class Client extends OpenApi {
8192
9953
  return $tea.cast<SetMFAAuthenticationStatusResponse>(await this.callApi(params, req, runtime), new SetMFAAuthenticationStatusResponse({}));
8193
9954
  }
8194
9955
 
9956
+ /**
9957
+ * If a CloudSSO administrator enables username-password logon for users, CloudSSO automatically enables MFA to improve security. The administrator can call this operation to enable or disable MFA based on the business requirements.
9958
+ * This topic provides an example on how to enable MFA for users.
9959
+ *
9960
+ * @param request SetMFAAuthenticationStatusRequest
9961
+ * @return SetMFAAuthenticationStatusResponse
9962
+ */
8195
9963
  async setMFAAuthenticationStatus(request: SetMFAAuthenticationStatusRequest): Promise<SetMFAAuthenticationStatusResponse> {
8196
9964
  let runtime = new $Util.RuntimeOptions({ });
8197
9965
  return await this.setMFAAuthenticationStatusWithOptions(request, runtime);
8198
9966
  }
8199
9967
 
9968
+ /**
9969
+ * You can synchronize users or groups from an external identity provider (IdP) that supports SCIM 2.0 to CloudSSO only after SCIM synchronization is enabled. If you disable SCIM synchronization, you can no longer synchronize users or groups to CloudSSO. The following list describes the impacts after SCIM synchronization is enabled or disabled:
9970
+ * * After you enable SCIM synchronization, you cannot modify or delete the users or groups that are synchronized to CloudSSO by using SCIM. In addition, you cannot add users to or remove users from the groups. However, you can change the passwords of the users and enable or disable the logon of the users.
9971
+ * * After you disable SCIM synchronization, you can modify and delete the users and groups that are synchronized to CloudSSO by using SCIM. You can also add users to or remove users from the groups.
9972
+ * This topic provides an example on how to enable SCIM synchronization within the directory `d-00fc2p61****`.
9973
+ *
9974
+ * @param request SetSCIMSynchronizationStatusRequest
9975
+ * @param runtime runtime options for this request RuntimeOptions
9976
+ * @return SetSCIMSynchronizationStatusResponse
9977
+ */
8200
9978
  async setSCIMSynchronizationStatusWithOptions(request: SetSCIMSynchronizationStatusRequest, runtime: $Util.RuntimeOptions): Promise<SetSCIMSynchronizationStatusResponse> {
8201
9979
  Util.validateModel(request);
8202
9980
  let query = { };
@@ -8225,11 +10003,28 @@ export default class Client extends OpenApi {
8225
10003
  return $tea.cast<SetSCIMSynchronizationStatusResponse>(await this.callApi(params, req, runtime), new SetSCIMSynchronizationStatusResponse({}));
8226
10004
  }
8227
10005
 
10006
+ /**
10007
+ * You can synchronize users or groups from an external identity provider (IdP) that supports SCIM 2.0 to CloudSSO only after SCIM synchronization is enabled. If you disable SCIM synchronization, you can no longer synchronize users or groups to CloudSSO. The following list describes the impacts after SCIM synchronization is enabled or disabled:
10008
+ * * After you enable SCIM synchronization, you cannot modify or delete the users or groups that are synchronized to CloudSSO by using SCIM. In addition, you cannot add users to or remove users from the groups. However, you can change the passwords of the users and enable or disable the logon of the users.
10009
+ * * After you disable SCIM synchronization, you can modify and delete the users and groups that are synchronized to CloudSSO by using SCIM. You can also add users to or remove users from the groups.
10010
+ * This topic provides an example on how to enable SCIM synchronization within the directory `d-00fc2p61****`.
10011
+ *
10012
+ * @param request SetSCIMSynchronizationStatusRequest
10013
+ * @return SetSCIMSynchronizationStatusResponse
10014
+ */
8228
10015
  async setSCIMSynchronizationStatus(request: SetSCIMSynchronizationStatusRequest): Promise<SetSCIMSynchronizationStatusResponse> {
8229
10016
  let runtime = new $Util.RuntimeOptions({ });
8230
10017
  return await this.setSCIMSynchronizationStatusWithOptions(request, runtime);
8231
10018
  }
8232
10019
 
10020
+ /**
10021
+ * You can modify the `Description`, `SessionDuration`, and `RelayState` parameters for an access configuration.
10022
+ * This topic provides an example on how to change the initial web page in the access configuration `ac-00jhtfl8thteu6uj****` to `https://cloudsso.console.aliyun.com`.
10023
+ *
10024
+ * @param request UpdateAccessConfigurationRequest
10025
+ * @param runtime runtime options for this request RuntimeOptions
10026
+ * @return UpdateAccessConfigurationResponse
10027
+ */
8233
10028
  async updateAccessConfigurationWithOptions(request: UpdateAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<UpdateAccessConfigurationResponse> {
8234
10029
  Util.validateModel(request);
8235
10030
  let query = { };
@@ -8270,11 +10065,26 @@ export default class Client extends OpenApi {
8270
10065
  return $tea.cast<UpdateAccessConfigurationResponse>(await this.callApi(params, req, runtime), new UpdateAccessConfigurationResponse({}));
8271
10066
  }
8272
10067
 
10068
+ /**
10069
+ * You can modify the `Description`, `SessionDuration`, and `RelayState` parameters for an access configuration.
10070
+ * This topic provides an example on how to change the initial web page in the access configuration `ac-00jhtfl8thteu6uj****` to `https://cloudsso.console.aliyun.com`.
10071
+ *
10072
+ * @param request UpdateAccessConfigurationRequest
10073
+ * @return UpdateAccessConfigurationResponse
10074
+ */
8273
10075
  async updateAccessConfiguration(request: UpdateAccessConfigurationRequest): Promise<UpdateAccessConfigurationResponse> {
8274
10076
  let runtime = new $Util.RuntimeOptions({ });
8275
10077
  return await this.updateAccessConfigurationWithOptions(request, runtime);
8276
10078
  }
8277
10079
 
10080
+ /**
10081
+ * After you change the name of a directory, the URL that is used to log on to the Cloud SSO user portal is changed. You must notify the Cloud SSO users of the correct URL.
10082
+ * This topic provides an example on how to change the name of a directory to `new-example`.
10083
+ *
10084
+ * @param request UpdateDirectoryRequest
10085
+ * @param runtime runtime options for this request RuntimeOptions
10086
+ * @return UpdateDirectoryResponse
10087
+ */
8278
10088
  async updateDirectoryWithOptions(request: UpdateDirectoryRequest, runtime: $Util.RuntimeOptions): Promise<UpdateDirectoryResponse> {
8279
10089
  Util.validateModel(request);
8280
10090
  let query = { };
@@ -8303,11 +10113,27 @@ export default class Client extends OpenApi {
8303
10113
  return $tea.cast<UpdateDirectoryResponse>(await this.callApi(params, req, runtime), new UpdateDirectoryResponse({}));
8304
10114
  }
8305
10115
 
10116
+ /**
10117
+ * After you change the name of a directory, the URL that is used to log on to the Cloud SSO user portal is changed. You must notify the Cloud SSO users of the correct URL.
10118
+ * This topic provides an example on how to change the name of a directory to `new-example`.
10119
+ *
10120
+ * @param request UpdateDirectoryRequest
10121
+ * @return UpdateDirectoryResponse
10122
+ */
8306
10123
  async updateDirectory(request: UpdateDirectoryRequest): Promise<UpdateDirectoryResponse> {
8307
10124
  let runtime = new $Util.RuntimeOptions({ });
8308
10125
  return await this.updateDirectoryWithOptions(request, runtime);
8309
10126
  }
8310
10127
 
10128
+ /**
10129
+ * You can modify `GroupName` and `Description` for a group.
10130
+ * > If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot modify the information about a group that is synchronized by using SCIM.
10131
+ * This topic provides an example on how to change the name of the group `g-00jqzghi2n3o5hkh****` to `NewTestGroup`.
10132
+ *
10133
+ * @param request UpdateGroupRequest
10134
+ * @param runtime runtime options for this request RuntimeOptions
10135
+ * @return UpdateGroupResponse
10136
+ */
8311
10137
  async updateGroupWithOptions(request: UpdateGroupRequest, runtime: $Util.RuntimeOptions): Promise<UpdateGroupResponse> {
8312
10138
  Util.validateModel(request);
8313
10139
  let query = { };
@@ -8344,11 +10170,26 @@ export default class Client extends OpenApi {
8344
10170
  return $tea.cast<UpdateGroupResponse>(await this.callApi(params, req, runtime), new UpdateGroupResponse({}));
8345
10171
  }
8346
10172
 
10173
+ /**
10174
+ * You can modify `GroupName` and `Description` for a group.
10175
+ * > If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot modify the information about a group that is synchronized by using SCIM.
10176
+ * This topic provides an example on how to change the name of the group `g-00jqzghi2n3o5hkh****` to `NewTestGroup`.
10177
+ *
10178
+ * @param request UpdateGroupRequest
10179
+ * @return UpdateGroupResponse
10180
+ */
8347
10181
  async updateGroup(request: UpdateGroupRequest): Promise<UpdateGroupResponse> {
8348
10182
  let runtime = new $Util.RuntimeOptions({ });
8349
10183
  return await this.updateGroupWithOptions(request, runtime);
8350
10184
  }
8351
10185
 
10186
+ /**
10187
+ * This topic provides an example on how to modify an inline policy that is created for the access configuration `ac-00jhtfl8thteu6uj****`.
10188
+ *
10189
+ * @param request UpdateInlinePolicyForAccessConfigurationRequest
10190
+ * @param runtime runtime options for this request RuntimeOptions
10191
+ * @return UpdateInlinePolicyForAccessConfigurationResponse
10192
+ */
8352
10193
  async updateInlinePolicyForAccessConfigurationWithOptions(request: UpdateInlinePolicyForAccessConfigurationRequest, runtime: $Util.RuntimeOptions): Promise<UpdateInlinePolicyForAccessConfigurationResponse> {
8353
10194
  Util.validateModel(request);
8354
10195
  let query = { };
@@ -8385,11 +10226,25 @@ export default class Client extends OpenApi {
8385
10226
  return $tea.cast<UpdateInlinePolicyForAccessConfigurationResponse>(await this.callApi(params, req, runtime), new UpdateInlinePolicyForAccessConfigurationResponse({}));
8386
10227
  }
8387
10228
 
10229
+ /**
10230
+ * This topic provides an example on how to modify an inline policy that is created for the access configuration `ac-00jhtfl8thteu6uj****`.
10231
+ *
10232
+ * @param request UpdateInlinePolicyForAccessConfigurationRequest
10233
+ * @return UpdateInlinePolicyForAccessConfigurationResponse
10234
+ */
8388
10235
  async updateInlinePolicyForAccessConfiguration(request: UpdateInlinePolicyForAccessConfigurationRequest): Promise<UpdateInlinePolicyForAccessConfigurationResponse> {
8389
10236
  let runtime = new $Util.RuntimeOptions({ });
8390
10237
  return await this.updateInlinePolicyForAccessConfigurationWithOptions(request, runtime);
8391
10238
  }
8392
10239
 
10240
+ /**
10241
+ * If you enable username-password logon for CloudSSO users, you can also configure MFA for the users.
10242
+ * This topic provides an example on how to enable MFA for all CloudSSO users that belong to the directory named `d-00fc2p61****`.
10243
+ *
10244
+ * @param request UpdateMFAAuthenticationSettingsRequest
10245
+ * @param runtime runtime options for this request RuntimeOptions
10246
+ * @return UpdateMFAAuthenticationSettingsResponse
10247
+ */
8393
10248
  async updateMFAAuthenticationSettingsWithOptions(request: UpdateMFAAuthenticationSettingsRequest, runtime: $Util.RuntimeOptions): Promise<UpdateMFAAuthenticationSettingsResponse> {
8394
10249
  Util.validateModel(request);
8395
10250
  let query = { };
@@ -8422,11 +10277,25 @@ export default class Client extends OpenApi {
8422
10277
  return $tea.cast<UpdateMFAAuthenticationSettingsResponse>(await this.callApi(params, req, runtime), new UpdateMFAAuthenticationSettingsResponse({}));
8423
10278
  }
8424
10279
 
10280
+ /**
10281
+ * If you enable username-password logon for CloudSSO users, you can also configure MFA for the users.
10282
+ * This topic provides an example on how to enable MFA for all CloudSSO users that belong to the directory named `d-00fc2p61****`.
10283
+ *
10284
+ * @param request UpdateMFAAuthenticationSettingsRequest
10285
+ * @return UpdateMFAAuthenticationSettingsResponse
10286
+ */
8425
10287
  async updateMFAAuthenticationSettings(request: UpdateMFAAuthenticationSettingsRequest): Promise<UpdateMFAAuthenticationSettingsResponse> {
8426
10288
  let runtime = new $Util.RuntimeOptions({ });
8427
10289
  return await this.updateMFAAuthenticationSettingsWithOptions(request, runtime);
8428
10290
  }
8429
10291
 
10292
+ /**
10293
+ * This topic provides an example on how to disable the SCIM credential whose ID is `scimcred-004whl0kvfwcypbi****`. After the SCIM credential is disabled, the synchronization task that uses the SCIM credential fails. You can call this operation again to enable the SCIM credential.
10294
+ *
10295
+ * @param request UpdateSCIMServerCredentialStatusRequest
10296
+ * @param runtime runtime options for this request RuntimeOptions
10297
+ * @return UpdateSCIMServerCredentialStatusResponse
10298
+ */
8430
10299
  async updateSCIMServerCredentialStatusWithOptions(request: UpdateSCIMServerCredentialStatusRequest, runtime: $Util.RuntimeOptions): Promise<UpdateSCIMServerCredentialStatusResponse> {
8431
10300
  Util.validateModel(request);
8432
10301
  let query = { };
@@ -8459,11 +10328,26 @@ export default class Client extends OpenApi {
8459
10328
  return $tea.cast<UpdateSCIMServerCredentialStatusResponse>(await this.callApi(params, req, runtime), new UpdateSCIMServerCredentialStatusResponse({}));
8460
10329
  }
8461
10330
 
10331
+ /**
10332
+ * This topic provides an example on how to disable the SCIM credential whose ID is `scimcred-004whl0kvfwcypbi****`. After the SCIM credential is disabled, the synchronization task that uses the SCIM credential fails. You can call this operation again to enable the SCIM credential.
10333
+ *
10334
+ * @param request UpdateSCIMServerCredentialStatusRequest
10335
+ * @return UpdateSCIMServerCredentialStatusResponse
10336
+ */
8462
10337
  async updateSCIMServerCredentialStatus(request: UpdateSCIMServerCredentialStatusRequest): Promise<UpdateSCIMServerCredentialStatusResponse> {
8463
10338
  let runtime = new $Util.RuntimeOptions({ });
8464
10339
  return await this.updateSCIMServerCredentialStatusWithOptions(request, runtime);
8465
10340
  }
8466
10341
 
10342
+ /**
10343
+ * You can modify `FirstName`, `LastName`, `DisplayName`, `Email`, and `Description` for a user. You cannot modify `UserName` for a user.
10344
+ * > If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot modify the information about a user that is synchronized by using SCIM.
10345
+ * This topic provides an example on how to change the email address of the user whose ID is `u-00q8wbq42wiltcrk****` to `AliceLee@example.com`.
10346
+ *
10347
+ * @param request UpdateUserRequest
10348
+ * @param runtime runtime options for this request RuntimeOptions
10349
+ * @return UpdateUserResponse
10350
+ */
8467
10351
  async updateUserWithOptions(request: UpdateUserRequest, runtime: $Util.RuntimeOptions): Promise<UpdateUserResponse> {
8468
10352
  Util.validateModel(request);
8469
10353
  let query = { };
@@ -8512,11 +10396,28 @@ export default class Client extends OpenApi {
8512
10396
  return $tea.cast<UpdateUserResponse>(await this.callApi(params, req, runtime), new UpdateUserResponse({}));
8513
10397
  }
8514
10398
 
10399
+ /**
10400
+ * You can modify `FirstName`, `LastName`, `DisplayName`, `Email`, and `Description` for a user. You cannot modify `UserName` for a user.
10401
+ * > If System for Cross-domain Identity Management (SCIM) synchronization is enabled, you cannot modify the information about a user that is synchronized by using SCIM.
10402
+ * This topic provides an example on how to change the email address of the user whose ID is `u-00q8wbq42wiltcrk****` to `AliceLee@example.com`.
10403
+ *
10404
+ * @param request UpdateUserRequest
10405
+ * @return UpdateUserResponse
10406
+ */
8515
10407
  async updateUser(request: UpdateUserRequest): Promise<UpdateUserResponse> {
8516
10408
  let runtime = new $Util.RuntimeOptions({ });
8517
10409
  return await this.updateUserWithOptions(request, runtime);
8518
10410
  }
8519
10411
 
10412
+ /**
10413
+ * If you call the [UpdateMFAAuthenticationSettings](~~450134~~) operation to set the MFAAuthenticationSettings parameter to `Byuser`, user-specific settings are applied. Then, you must call the UpdateUserMFAAuthenticationSettings operation to configure MFA for each user.
10414
+ * By default, the MFAAuthenticationSettings parameter is set to `Enabled` for a new user.
10415
+ * This topic provides an example on how to enable MFA for the user named `u-00q8wbq42wiltcrk****`.
10416
+ *
10417
+ * @param request UpdateUserMFAAuthenticationSettingsRequest
10418
+ * @param runtime runtime options for this request RuntimeOptions
10419
+ * @return UpdateUserMFAAuthenticationSettingsResponse
10420
+ */
8520
10421
  async updateUserMFAAuthenticationSettingsWithOptions(request: UpdateUserMFAAuthenticationSettingsRequest, runtime: $Util.RuntimeOptions): Promise<UpdateUserMFAAuthenticationSettingsResponse> {
8521
10422
  Util.validateModel(request);
8522
10423
  let query = { };
@@ -8549,11 +10450,71 @@ export default class Client extends OpenApi {
8549
10450
  return $tea.cast<UpdateUserMFAAuthenticationSettingsResponse>(await this.callApi(params, req, runtime), new UpdateUserMFAAuthenticationSettingsResponse({}));
8550
10451
  }
8551
10452
 
10453
+ /**
10454
+ * If you call the [UpdateMFAAuthenticationSettings](~~450134~~) operation to set the MFAAuthenticationSettings parameter to `Byuser`, user-specific settings are applied. Then, you must call the UpdateUserMFAAuthenticationSettings operation to configure MFA for each user.
10455
+ * By default, the MFAAuthenticationSettings parameter is set to `Enabled` for a new user.
10456
+ * This topic provides an example on how to enable MFA for the user named `u-00q8wbq42wiltcrk****`.
10457
+ *
10458
+ * @param request UpdateUserMFAAuthenticationSettingsRequest
10459
+ * @return UpdateUserMFAAuthenticationSettingsResponse
10460
+ */
8552
10461
  async updateUserMFAAuthenticationSettings(request: UpdateUserMFAAuthenticationSettingsRequest): Promise<UpdateUserMFAAuthenticationSettingsResponse> {
8553
10462
  let runtime = new $Util.RuntimeOptions({ });
8554
10463
  return await this.updateUserMFAAuthenticationSettingsWithOptions(request, runtime);
8555
10464
  }
8556
10465
 
10466
+ async updateUserProvisioningWithOptions(request: UpdateUserProvisioningRequest, runtime: $Util.RuntimeOptions): Promise<UpdateUserProvisioningResponse> {
10467
+ Util.validateModel(request);
10468
+ let query = { };
10469
+ if (!Util.isUnset(request.directoryId)) {
10470
+ query["DirectoryId"] = request.directoryId;
10471
+ }
10472
+
10473
+ if (!Util.isUnset(request.newDeletionStrategy)) {
10474
+ query["NewDeletionStrategy"] = request.newDeletionStrategy;
10475
+ }
10476
+
10477
+ if (!Util.isUnset(request.newDescription)) {
10478
+ query["NewDescription"] = request.newDescription;
10479
+ }
10480
+
10481
+ if (!Util.isUnset(request.newDuplicationStrategy)) {
10482
+ query["NewDuplicationStrategy"] = request.newDuplicationStrategy;
10483
+ }
10484
+
10485
+ if (!Util.isUnset(request.userProvisioningId)) {
10486
+ query["UserProvisioningId"] = request.userProvisioningId;
10487
+ }
10488
+
10489
+ let req = new $OpenApi.OpenApiRequest({
10490
+ query: OpenApiUtil.query(query),
10491
+ });
10492
+ let params = new $OpenApi.Params({
10493
+ action: "UpdateUserProvisioning",
10494
+ version: "2021-05-15",
10495
+ protocol: "HTTPS",
10496
+ pathname: "/",
10497
+ method: "POST",
10498
+ authType: "AK",
10499
+ style: "RPC",
10500
+ reqBodyType: "formData",
10501
+ bodyType: "json",
10502
+ });
10503
+ return $tea.cast<UpdateUserProvisioningResponse>(await this.callApi(params, req, runtime), new UpdateUserProvisioningResponse({}));
10504
+ }
10505
+
10506
+ async updateUserProvisioning(request: UpdateUserProvisioningRequest): Promise<UpdateUserProvisioningResponse> {
10507
+ let runtime = new $Util.RuntimeOptions({ });
10508
+ return await this.updateUserProvisioningWithOptions(request, runtime);
10509
+ }
10510
+
10511
+ /**
10512
+ * This topic provides an example on how to change the status of the user whose ID is `u-00q8wbq42wiltcrk****` to Disabled. Users in the Disabled state cannot log on to the CloudSSO user portal.
10513
+ *
10514
+ * @param request UpdateUserStatusRequest
10515
+ * @param runtime runtime options for this request RuntimeOptions
10516
+ * @return UpdateUserStatusResponse
10517
+ */
8557
10518
  async updateUserStatusWithOptions(request: UpdateUserStatusRequest, runtime: $Util.RuntimeOptions): Promise<UpdateUserStatusResponse> {
8558
10519
  Util.validateModel(request);
8559
10520
  let query = { };
@@ -8586,6 +10547,12 @@ export default class Client extends OpenApi {
8586
10547
  return $tea.cast<UpdateUserStatusResponse>(await this.callApi(params, req, runtime), new UpdateUserStatusResponse({}));
8587
10548
  }
8588
10549
 
10550
+ /**
10551
+ * This topic provides an example on how to change the status of the user whose ID is `u-00q8wbq42wiltcrk****` to Disabled. Users in the Disabled state cannot log on to the CloudSSO user portal.
10552
+ *
10553
+ * @param request UpdateUserStatusRequest
10554
+ * @return UpdateUserStatusResponse
10555
+ */
8589
10556
  async updateUserStatus(request: UpdateUserStatusRequest): Promise<UpdateUserStatusResponse> {
8590
10557
  let runtime = new $Util.RuntimeOptions({ });
8591
10558
  return await this.updateUserStatusWithOptions(request, runtime);