@azure/arm-storage 17.0.1-alpha.20220128.2 → 17.1.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.
Files changed (70) hide show
  1. package/CHANGELOG.md +42 -11
  2. package/LICENSE +1 -1
  3. package/dist/index.js +836 -452
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.min.js +1 -1
  6. package/dist/index.min.js.map +1 -1
  7. package/dist-esm/src/models/index.d.ts +147 -21
  8. package/dist-esm/src/models/index.d.ts.map +1 -1
  9. package/dist-esm/src/models/index.js +12 -0
  10. package/dist-esm/src/models/index.js.map +1 -1
  11. package/dist-esm/src/models/mappers.d.ts +6 -2
  12. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  13. package/dist-esm/src/models/mappers.js +241 -53
  14. package/dist-esm/src/models/mappers.js.map +1 -1
  15. package/dist-esm/src/models/parameters.d.ts +2 -0
  16. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  17. package/dist-esm/src/models/parameters.js +20 -2
  18. package/dist-esm/src/models/parameters.js.map +1 -1
  19. package/dist-esm/src/operations/fileServices.js +3 -3
  20. package/dist-esm/src/operations/fileServices.js.map +1 -1
  21. package/dist-esm/src/operations/fileShares.js +8 -8
  22. package/dist-esm/src/operations/fileShares.js.map +1 -1
  23. package/dist-esm/src/operations/index.d.ts +1 -0
  24. package/dist-esm/src/operations/index.d.ts.map +1 -1
  25. package/dist-esm/src/operations/index.js +1 -0
  26. package/dist-esm/src/operations/index.js.map +1 -1
  27. package/dist-esm/src/operations/localUsersOperations.d.ts +97 -0
  28. package/dist-esm/src/operations/localUsersOperations.d.ts.map +1 -0
  29. package/dist-esm/src/operations/localUsersOperations.js +287 -0
  30. package/dist-esm/src/operations/localUsersOperations.js.map +1 -0
  31. package/dist-esm/src/operations/queue.js +6 -6
  32. package/dist-esm/src/operations/queue.js.map +1 -1
  33. package/dist-esm/src/operations/queueServices.js +3 -3
  34. package/dist-esm/src/operations/queueServices.js.map +1 -1
  35. package/dist-esm/src/operations/tableOperations.js +6 -6
  36. package/dist-esm/src/operations/tableOperations.js.map +1 -1
  37. package/dist-esm/src/operations/tableServices.js +3 -3
  38. package/dist-esm/src/operations/tableServices.js.map +1 -1
  39. package/dist-esm/src/operationsInterfaces/index.d.ts +1 -0
  40. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -1
  41. package/dist-esm/src/operationsInterfaces/index.js +1 -0
  42. package/dist-esm/src/operationsInterfaces/index.js.map +1 -1
  43. package/dist-esm/src/operationsInterfaces/localUsersOperations.d.ts +77 -0
  44. package/dist-esm/src/operationsInterfaces/localUsersOperations.d.ts.map +1 -0
  45. package/dist-esm/src/operationsInterfaces/localUsersOperations.js +9 -0
  46. package/dist-esm/src/operationsInterfaces/localUsersOperations.js.map +1 -0
  47. package/dist-esm/src/storageManagementClient.d.ts +2 -1
  48. package/dist-esm/src/storageManagementClient.d.ts.map +1 -1
  49. package/dist-esm/src/storageManagementClient.js +4 -3
  50. package/dist-esm/src/storageManagementClient.js.map +1 -1
  51. package/dist-esm/test/storage_examples.js +1 -1
  52. package/dist-esm/test/storage_examples.js.map +1 -1
  53. package/package.json +22 -8
  54. package/review/arm-storage.api.md +126 -13
  55. package/src/models/index.ts +168 -23
  56. package/src/models/mappers.ts +260 -55
  57. package/src/models/parameters.ts +22 -1
  58. package/src/operations/fileServices.ts +3 -3
  59. package/src/operations/fileShares.ts +8 -8
  60. package/src/operations/index.ts +1 -0
  61. package/src/operations/localUsersOperations.ts +371 -0
  62. package/src/operations/queue.ts +6 -6
  63. package/src/operations/queueServices.ts +3 -3
  64. package/src/operations/tableOperations.ts +6 -6
  65. package/src/operations/tableServices.ts +3 -3
  66. package/src/operationsInterfaces/index.ts +1 -0
  67. package/src/operationsInterfaces/localUsersOperations.ts +128 -0
  68. package/src/storageManagementClient.ts +6 -2
  69. package/tsconfig.json +18 -5
  70. package/types/arm-storage.d.ts +244 -23
@@ -47,14 +47,22 @@ export type AccountStatus = "available" | "unavailable";
47
47
 
48
48
  // @public
49
49
  export interface ActiveDirectoryProperties {
50
+ accountType?: ActiveDirectoryPropertiesAccountType;
50
51
  azureStorageSid: string;
51
52
  domainGuid: string;
52
53
  domainName: string;
53
54
  domainSid: string;
54
55
  forestName: string;
55
56
  netBiosDomainName: string;
57
+ samAccountName?: string;
56
58
  }
57
59
 
60
+ // @public
61
+ export type ActiveDirectoryPropertiesAccountType = string;
62
+
63
+ // @public
64
+ export type AllowedCopyScope = string;
65
+
58
66
  // @public
59
67
  export type AzureEntityResource = Resource & {
60
68
  readonly etag?: string;
@@ -414,11 +422,6 @@ export interface CloudError {
414
422
  error?: CloudErrorBody;
415
423
  }
416
424
 
417
- // @public
418
- export interface CloudErrorAutoGenerated {
419
- error?: CloudErrorBodyAutoGenerated;
420
- }
421
-
422
425
  // @public
423
426
  export interface CloudErrorBody {
424
427
  code?: string;
@@ -427,14 +430,6 @@ export interface CloudErrorBody {
427
430
  target?: string;
428
431
  }
429
432
 
430
- // @public
431
- export interface CloudErrorBodyAutoGenerated {
432
- code?: string;
433
- details?: CloudErrorBodyAutoGenerated[];
434
- message?: string;
435
- target?: string;
436
- }
437
-
438
433
  // @public
439
434
  export interface CorsRule {
440
435
  allowedHeaders: string[];
@@ -555,6 +550,7 @@ export interface Encryption {
555
550
 
556
551
  // @public
557
552
  export interface EncryptionIdentity {
553
+ encryptionFederatedIdentityClientId?: string;
558
554
  encryptionUserAssignedIdentity?: string;
559
555
  }
560
556
 
@@ -974,6 +970,22 @@ export enum KnownAccountImmutabilityPolicyState {
974
970
  Unlocked = "Unlocked"
975
971
  }
976
972
 
973
+ // @public
974
+ export enum KnownActiveDirectoryPropertiesAccountType {
975
+ // (undocumented)
976
+ Computer = "Computer",
977
+ // (undocumented)
978
+ User = "User"
979
+ }
980
+
981
+ // @public
982
+ export enum KnownAllowedCopyScope {
983
+ // (undocumented)
984
+ AAD = "AAD",
985
+ // (undocumented)
986
+ PrivateLink = "PrivateLink"
987
+ }
988
+
977
989
  // @public
978
990
  export enum KnownBlobInventoryPolicyName {
979
991
  // (undocumented)
@@ -1602,6 +1614,83 @@ export interface ListTableServices {
1602
1614
  readonly value?: TableServiceProperties[];
1603
1615
  }
1604
1616
 
1617
+ // @public
1618
+ export type LocalUser = Resource & {
1619
+ readonly systemData?: SystemData;
1620
+ permissionScopes?: PermissionScope[];
1621
+ homeDirectory?: string;
1622
+ sshAuthorizedKeys?: SshPublicKey[];
1623
+ readonly sid?: string;
1624
+ hasSharedKey?: boolean;
1625
+ hasSshKey?: boolean;
1626
+ hasSshPassword?: boolean;
1627
+ };
1628
+
1629
+ // @public
1630
+ export interface LocalUserKeys {
1631
+ readonly sharedKey?: string;
1632
+ sshAuthorizedKeys?: SshPublicKey[];
1633
+ }
1634
+
1635
+ // @public
1636
+ export interface LocalUserRegeneratePasswordResult {
1637
+ readonly sshPassword?: string;
1638
+ }
1639
+
1640
+ // @public
1641
+ export interface LocalUsers {
1642
+ value?: LocalUser[];
1643
+ }
1644
+
1645
+ // @public
1646
+ export interface LocalUsersCreateOrUpdateOptionalParams extends coreClient.OperationOptions {
1647
+ }
1648
+
1649
+ // @public
1650
+ export type LocalUsersCreateOrUpdateResponse = LocalUser;
1651
+
1652
+ // @public
1653
+ export interface LocalUsersDeleteOptionalParams extends coreClient.OperationOptions {
1654
+ }
1655
+
1656
+ // @public
1657
+ export interface LocalUsersGetOptionalParams extends coreClient.OperationOptions {
1658
+ }
1659
+
1660
+ // @public
1661
+ export type LocalUsersGetResponse = LocalUser;
1662
+
1663
+ // @public
1664
+ export interface LocalUsersListKeysOptionalParams extends coreClient.OperationOptions {
1665
+ }
1666
+
1667
+ // @public
1668
+ export type LocalUsersListKeysResponse = LocalUserKeys;
1669
+
1670
+ // @public
1671
+ export interface LocalUsersListOptionalParams extends coreClient.OperationOptions {
1672
+ }
1673
+
1674
+ // @public
1675
+ export type LocalUsersListResponse = LocalUsers;
1676
+
1677
+ // @public
1678
+ export interface LocalUsersOperations {
1679
+ createOrUpdate(resourceGroupName: string, accountName: string, username: string, properties: LocalUser, options?: LocalUsersCreateOrUpdateOptionalParams): Promise<LocalUsersCreateOrUpdateResponse>;
1680
+ delete(resourceGroupName: string, accountName: string, username: string, options?: LocalUsersDeleteOptionalParams): Promise<void>;
1681
+ get(resourceGroupName: string, accountName: string, username: string, options?: LocalUsersGetOptionalParams): Promise<LocalUsersGetResponse>;
1682
+ list(resourceGroupName: string, accountName: string, options?: LocalUsersListOptionalParams): PagedAsyncIterableIterator<LocalUser>;
1683
+ listKeys(resourceGroupName: string, accountName: string, username: string, options?: LocalUsersListKeysOptionalParams): Promise<LocalUsersListKeysResponse>;
1684
+ regeneratePassword(resourceGroupName: string, accountName: string, username: string, options?: LocalUsersRegeneratePasswordOptionalParams): Promise<LocalUsersRegeneratePasswordResponse>;
1685
+ }
1686
+
1687
+ // @public
1688
+ export interface LocalUsersRegeneratePasswordOptionalParams extends coreClient.OperationOptions {
1689
+ }
1690
+
1691
+ // @public
1692
+ export type LocalUsersRegeneratePasswordResponse = LocalUserRegeneratePasswordResult;
1693
+
1605
1694
  // @public
1606
1695
  export interface ManagementPolicies {
1607
1696
  createOrUpdate(resourceGroupName: string, accountName: string, managementPolicyName: ManagementPolicyName, properties: ManagementPolicy, options?: ManagementPoliciesCreateOrUpdateOptionalParams): Promise<ManagementPoliciesCreateOrUpdateResponse>;
@@ -1828,6 +1917,13 @@ export type OperationsListResponse = OperationListResult;
1828
1917
  type Permissions_2 = string;
1829
1918
  export { Permissions_2 as Permissions }
1830
1919
 
1920
+ // @public (undocumented)
1921
+ export interface PermissionScope {
1922
+ permissions: string;
1923
+ resourceName: string;
1924
+ service: string;
1925
+ }
1926
+
1831
1927
  // @public
1832
1928
  export interface PrivateEndpoint {
1833
1929
  readonly id?: string;
@@ -2177,6 +2273,12 @@ export interface SmbSetting {
2177
2273
  versions?: string;
2178
2274
  }
2179
2275
 
2276
+ // @public (undocumented)
2277
+ export interface SshPublicKey {
2278
+ description?: string;
2279
+ key?: string;
2280
+ }
2281
+
2180
2282
  // @public
2181
2283
  export type State = string;
2182
2284
 
@@ -2204,6 +2306,8 @@ export type StorageAccount = TrackedResource & {
2204
2306
  azureFilesIdentityBasedAuthentication?: AzureFilesIdentityBasedAuthentication;
2205
2307
  enableHttpsTrafficOnly?: boolean;
2206
2308
  readonly networkRuleSet?: NetworkRuleSet;
2309
+ isSftpEnabled?: boolean;
2310
+ isLocalUserEnabled?: boolean;
2207
2311
  isHnsEnabled?: boolean;
2208
2312
  readonly geoReplicationStats?: GeoReplicationStats;
2209
2313
  readonly failoverInProgress?: boolean;
@@ -2219,6 +2323,7 @@ export type StorageAccount = TrackedResource & {
2219
2323
  defaultToOAuthAuthentication?: boolean;
2220
2324
  publicNetworkAccess?: PublicNetworkAccess;
2221
2325
  immutableStorageWithVersioning?: ImmutableStorageAccount;
2326
+ allowedCopyScope?: AllowedCopyScope;
2222
2327
  };
2223
2328
 
2224
2329
  // @public
@@ -2232,6 +2337,7 @@ export interface StorageAccountCreateParameters {
2232
2337
  accessTier?: AccessTier;
2233
2338
  allowBlobPublicAccess?: boolean;
2234
2339
  allowCrossTenantReplication?: boolean;
2340
+ allowedCopyScope?: AllowedCopyScope;
2235
2341
  allowSharedKeyAccess?: boolean;
2236
2342
  azureFilesIdentityBasedAuthentication?: AzureFilesIdentityBasedAuthentication;
2237
2343
  customDomain?: CustomDomain;
@@ -2243,6 +2349,8 @@ export interface StorageAccountCreateParameters {
2243
2349
  identity?: Identity;
2244
2350
  immutableStorageWithVersioning?: ImmutableStorageAccount;
2245
2351
  isHnsEnabled?: boolean;
2352
+ isLocalUserEnabled?: boolean;
2353
+ isSftpEnabled?: boolean;
2246
2354
  keyPolicy?: KeyPolicy;
2247
2355
  kind: Kind;
2248
2356
  largeFileSharesState?: LargeFileSharesState;
@@ -2455,6 +2563,7 @@ export interface StorageAccountUpdateParameters {
2455
2563
  accessTier?: AccessTier;
2456
2564
  allowBlobPublicAccess?: boolean;
2457
2565
  allowCrossTenantReplication?: boolean;
2566
+ allowedCopyScope?: AllowedCopyScope;
2458
2567
  allowSharedKeyAccess?: boolean;
2459
2568
  azureFilesIdentityBasedAuthentication?: AzureFilesIdentityBasedAuthentication;
2460
2569
  customDomain?: CustomDomain;
@@ -2463,6 +2572,8 @@ export interface StorageAccountUpdateParameters {
2463
2572
  encryption?: Encryption;
2464
2573
  identity?: Identity;
2465
2574
  immutableStorageWithVersioning?: ImmutableStorageAccount;
2575
+ isLocalUserEnabled?: boolean;
2576
+ isSftpEnabled?: boolean;
2466
2577
  keyPolicy?: KeyPolicy;
2467
2578
  kind?: Kind;
2468
2579
  largeFileSharesState?: LargeFileSharesState;
@@ -2499,6 +2610,8 @@ export class StorageManagementClient extends coreClient.ServiceClient {
2499
2610
  // (undocumented)
2500
2611
  fileShares: FileShares;
2501
2612
  // (undocumented)
2613
+ localUsersOperations: LocalUsersOperations;
2614
+ // (undocumented)
2502
2615
  managementPolicies: ManagementPolicies;
2503
2616
  // (undocumented)
2504
2617
  objectReplicationPoliciesOperations: ObjectReplicationPoliciesOperations;
@@ -187,6 +187,8 @@ export interface StorageAccountCreateParameters {
187
187
  tags?: { [propertyName: string]: string };
188
188
  /** The identity of the resource. */
189
189
  identity?: Identity;
190
+ /** Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet. */
191
+ allowedCopyScope?: AllowedCopyScope;
190
192
  /** Allow or disallow public network access to Storage Account. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. */
191
193
  publicNetworkAccess?: PublicNetworkAccess;
192
194
  /** SasPolicy assigned to the storage account. */
@@ -195,7 +197,7 @@ export interface StorageAccountCreateParameters {
195
197
  keyPolicy?: KeyPolicy;
196
198
  /** User domain assigned to the storage account. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property. */
197
199
  customDomain?: CustomDomain;
198
- /** Not applicable. Azure Storage encryption is enabled for all storage accounts and cannot be disabled. */
200
+ /** Encryption settings to be used for server-side encryption for the storage account. */
199
201
  encryption?: Encryption;
200
202
  /** Network rule set */
201
203
  networkRuleSet?: NetworkRuleSet;
@@ -205,6 +207,10 @@ export interface StorageAccountCreateParameters {
205
207
  azureFilesIdentityBasedAuthentication?: AzureFilesIdentityBasedAuthentication;
206
208
  /** Allows https traffic only to storage service if sets to true. The default value is true since API version 2019-04-01. */
207
209
  enableHttpsTrafficOnly?: boolean;
210
+ /** Enables Secure File Transfer Protocol, if set to true */
211
+ isSftpEnabled?: boolean;
212
+ /** Enables local users feature, if set to true */
213
+ isLocalUserEnabled?: boolean;
208
214
  /** Account HierarchicalNamespace enabled if sets to true. */
209
215
  isHnsEnabled?: boolean;
210
216
  /** Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled. */
@@ -328,10 +334,10 @@ export interface EncryptionServices {
328
334
 
329
335
  /** A service that allows server-side encryption to be used. */
330
336
  export interface EncryptionService {
331
- /** A boolean indicating whether or not the service encrypts the data as it is stored. */
337
+ /** A boolean indicating whether or not the service encrypts the data as it is stored. Encryption at rest is enabled by default today and cannot be disabled. */
332
338
  enabled?: boolean;
333
339
  /**
334
- * Gets a rough estimate of the date/time when the encryption was last enabled by the user. Only returned when encryption is enabled. There might be some unencrypted blobs which were written after this time, as it is just a rough estimate.
340
+ * Gets a rough estimate of the date/time when the encryption was last enabled by the user. Data is encrypted at rest by default today and cannot be disabled.
335
341
  * NOTE: This property will not be serialized. It can only be populated by the server.
336
342
  */
337
343
  readonly lastEnabledTime?: Date;
@@ -363,6 +369,8 @@ export interface KeyVaultProperties {
363
369
  export interface EncryptionIdentity {
364
370
  /** Resource identifier of the UserAssigned identity to be associated with server-side encryption on the storage account. */
365
371
  encryptionUserAssignedIdentity?: string;
372
+ /** ClientId of the multi-tenant application to be used in conjunction with the user-assigned identity for cross-tenant customer-managed-keys server-side encryption on the storage account. */
373
+ encryptionFederatedIdentityClientId?: string;
366
374
  }
367
375
 
368
376
  /** Network rule set */
@@ -429,6 +437,10 @@ export interface ActiveDirectoryProperties {
429
437
  domainSid: string;
430
438
  /** Specifies the security identifier (SID) for Azure Storage. */
431
439
  azureStorageSid: string;
440
+ /** Specifies the Active Directory SAMAccountName for Azure Storage. */
441
+ samAccountName?: string;
442
+ /** Specifies the Active Directory account type for Azure Storage. */
443
+ accountType?: ActiveDirectoryPropertiesAccountType;
432
444
  }
433
445
 
434
446
  /** Routing preference defines the type of network, either microsoft or internet routing to be used to deliver the user data, the default option is microsoft routing */
@@ -670,7 +682,7 @@ export interface StorageAccountUpdateParameters {
670
682
  kind?: Kind;
671
683
  /** Custom domain assigned to the storage account by the user. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property. */
672
684
  customDomain?: CustomDomain;
673
- /** Provides the encryption settings on the account. The default setting is unencrypted. */
685
+ /** Not applicable. Azure Storage encryption at rest is enabled by default for all storage accounts and cannot be disabled. */
674
686
  encryption?: Encryption;
675
687
  /** SasPolicy assigned to the storage account. */
676
688
  sasPolicy?: SasPolicy;
@@ -682,6 +694,10 @@ export interface StorageAccountUpdateParameters {
682
694
  azureFilesIdentityBasedAuthentication?: AzureFilesIdentityBasedAuthentication;
683
695
  /** Allows https traffic only to storage service if sets to true. */
684
696
  enableHttpsTrafficOnly?: boolean;
697
+ /** Enables Secure File Transfer Protocol, if set to true */
698
+ isSftpEnabled?: boolean;
699
+ /** Enables local users feature, if set to true */
700
+ isLocalUserEnabled?: boolean;
685
701
  /** Network rule set */
686
702
  networkRuleSet?: NetworkRuleSet;
687
703
  /** Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled. */
@@ -702,6 +718,8 @@ export interface StorageAccountUpdateParameters {
702
718
  publicNetworkAccess?: PublicNetworkAccess;
703
719
  /** The property is immutable and can only be set to true at the account creation time. When set to true, it enables object level immutability for all the containers in the account by default. */
704
720
  immutableStorageWithVersioning?: ImmutableStorageAccount;
721
+ /** Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet. */
722
+ allowedCopyScope?: AllowedCopyScope;
705
723
  }
706
724
 
707
725
  /** The response from the List Deleted Accounts operation. */
@@ -1120,6 +1138,48 @@ export interface ObjectReplicationPolicyFilter {
1120
1138
  minCreationTime?: string;
1121
1139
  }
1122
1140
 
1141
+ /** List storage account local users. */
1142
+ export interface LocalUsers {
1143
+ /** The local users associated with the storage account. */
1144
+ value?: LocalUser[];
1145
+ }
1146
+
1147
+ export interface PermissionScope {
1148
+ /** The permissions for the local user. Possible values include: Read (r), Write (w), Delete (d), List (l), and Create (c). */
1149
+ permissions: string;
1150
+ /** The service used by the local user, e.g. blob, file. */
1151
+ service: string;
1152
+ /** The name of resource, normally the container name or the file share name, used by the local user. */
1153
+ resourceName: string;
1154
+ }
1155
+
1156
+ export interface SshPublicKey {
1157
+ /** Optional. It is used to store the function/usage of the key */
1158
+ description?: string;
1159
+ /** Ssh public key base64 encoded. The format should be: '<keyType> <keyData>', e.g. ssh-rsa AAAABBBB */
1160
+ key?: string;
1161
+ }
1162
+
1163
+ /** The Storage Account Local User keys. */
1164
+ export interface LocalUserKeys {
1165
+ /** Optional, local user ssh authorized keys for SFTP. */
1166
+ sshAuthorizedKeys?: SshPublicKey[];
1167
+ /**
1168
+ * Auto generated by the server for SMB authentication.
1169
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1170
+ */
1171
+ readonly sharedKey?: string;
1172
+ }
1173
+
1174
+ /** The secrets of Storage Account Local User. */
1175
+ export interface LocalUserRegeneratePasswordResult {
1176
+ /**
1177
+ * Auto generated password by the server for SSH authentication if hasSshPassword is set to true on the creation of local user.
1178
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1179
+ */
1180
+ readonly sshPassword?: string;
1181
+ }
1182
+
1123
1183
  /** The key vault properties for the encryption scope. This is a required field if encryption scope 'source' attribute is set to 'Microsoft.KeyVault'. */
1124
1184
  export interface EncryptionScopeKeyVaultProperties {
1125
1185
  /** The object identifier for a key vault key object. When applied, the encryption scope will use the key referenced by the identifier to enable customer-managed key support on this encryption scope. */
@@ -1457,24 +1517,6 @@ export interface Multichannel {
1457
1517
  enabled?: boolean;
1458
1518
  }
1459
1519
 
1460
- /** An error response from the Storage service. */
1461
- export interface CloudErrorAutoGenerated {
1462
- /** An error response from the Storage service. */
1463
- error?: CloudErrorBodyAutoGenerated;
1464
- }
1465
-
1466
- /** An error response from the Storage service. */
1467
- export interface CloudErrorBodyAutoGenerated {
1468
- /** An identifier for the error. Codes are invariant and are intended to be consumed programmatically. */
1469
- code?: string;
1470
- /** A message describing the error, intended to be suitable for display in a user interface. */
1471
- message?: string;
1472
- /** The target of the particular error. For example, the name of the property in error. */
1473
- target?: string;
1474
- /** A list of additional details about the error. */
1475
- details?: CloudErrorBodyAutoGenerated[];
1476
- }
1477
-
1478
1520
  /** Response schema. Contains list of shares returned, and if paging is requested or required, a URL to next page of shares. */
1479
1521
  export interface FileShareItems {
1480
1522
  /**
@@ -1666,6 +1708,32 @@ export type ObjectReplicationPolicy = Resource & {
1666
1708
  rules?: ObjectReplicationPolicyRule[];
1667
1709
  };
1668
1710
 
1711
+ /** The local user associated with the storage accounts. */
1712
+ export type LocalUser = Resource & {
1713
+ /**
1714
+ * Metadata pertaining to creation and last modification of the resource.
1715
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1716
+ */
1717
+ readonly systemData?: SystemData;
1718
+ /** The permission scopes of the local user. */
1719
+ permissionScopes?: PermissionScope[];
1720
+ /** Optional, local user home directory. */
1721
+ homeDirectory?: string;
1722
+ /** Optional, local user ssh authorized keys for SFTP. */
1723
+ sshAuthorizedKeys?: SshPublicKey[];
1724
+ /**
1725
+ * A unique Security Identifier that is generated by the server.
1726
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1727
+ */
1728
+ readonly sid?: string;
1729
+ /** Indicates whether shared key exists. Set it to false to remove existing shared key. */
1730
+ hasSharedKey?: boolean;
1731
+ /** Indicates whether ssh key exists. Set it to false to remove existing SSH key. */
1732
+ hasSshKey?: boolean;
1733
+ /** Indicates whether ssh password exists. Set it to false to remove existing SSH password. */
1734
+ hasSshPassword?: boolean;
1735
+ };
1736
+
1669
1737
  /** The Encryption Scope resource. */
1670
1738
  export type EncryptionScope = Resource & {
1671
1739
  /** The provider for the encryption scope. Possible values (case-insensitive): Microsoft.Storage, Microsoft.KeyVault. */
@@ -1857,7 +1925,7 @@ export type StorageAccount = TrackedResource & {
1857
1925
  */
1858
1926
  readonly secondaryEndpoints?: Endpoints;
1859
1927
  /**
1860
- * Gets the encryption settings on the account. If unspecified, the account is unencrypted.
1928
+ * Encryption settings to be used for server-side encryption for the storage account.
1861
1929
  * NOTE: This property will not be serialized. It can only be populated by the server.
1862
1930
  */
1863
1931
  readonly encryption?: Encryption;
@@ -1875,6 +1943,10 @@ export type StorageAccount = TrackedResource & {
1875
1943
  * NOTE: This property will not be serialized. It can only be populated by the server.
1876
1944
  */
1877
1945
  readonly networkRuleSet?: NetworkRuleSet;
1946
+ /** Enables Secure File Transfer Protocol, if set to true */
1947
+ isSftpEnabled?: boolean;
1948
+ /** Enables local users feature, if set to true */
1949
+ isLocalUserEnabled?: boolean;
1878
1950
  /** Account HierarchicalNamespace enabled if sets to true. */
1879
1951
  isHnsEnabled?: boolean;
1880
1952
  /**
@@ -1917,6 +1989,8 @@ export type StorageAccount = TrackedResource & {
1917
1989
  publicNetworkAccess?: PublicNetworkAccess;
1918
1990
  /** The property is immutable and can only be set to true at the account creation time. When set to true, it enables object level immutability for all the containers in the account by default. */
1919
1991
  immutableStorageWithVersioning?: ImmutableStorageAccount;
1992
+ /** Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet. */
1993
+ allowedCopyScope?: AllowedCopyScope;
1920
1994
  };
1921
1995
 
1922
1996
  /** Deleted storage account */
@@ -2407,6 +2481,22 @@ export enum KnownIdentityType {
2407
2481
  */
2408
2482
  export type IdentityType = string;
2409
2483
 
2484
+ /** Known values of {@link AllowedCopyScope} that the service accepts. */
2485
+ export enum KnownAllowedCopyScope {
2486
+ PrivateLink = "PrivateLink",
2487
+ AAD = "AAD"
2488
+ }
2489
+
2490
+ /**
2491
+ * Defines values for AllowedCopyScope. \
2492
+ * {@link KnownAllowedCopyScope} can be used interchangeably with AllowedCopyScope,
2493
+ * this enum contains the known values that the service supports.
2494
+ * ### Known values supported by the service
2495
+ * **PrivateLink** \
2496
+ * **AAD**
2497
+ */
2498
+ export type AllowedCopyScope = string;
2499
+
2410
2500
  /** Known values of {@link PublicNetworkAccess} that the service accepts. */
2411
2501
  export enum KnownPublicNetworkAccess {
2412
2502
  Enabled = "Enabled",
@@ -2529,6 +2619,22 @@ export enum KnownDirectoryServiceOptions {
2529
2619
  */
2530
2620
  export type DirectoryServiceOptions = string;
2531
2621
 
2622
+ /** Known values of {@link ActiveDirectoryPropertiesAccountType} that the service accepts. */
2623
+ export enum KnownActiveDirectoryPropertiesAccountType {
2624
+ User = "User",
2625
+ Computer = "Computer"
2626
+ }
2627
+
2628
+ /**
2629
+ * Defines values for ActiveDirectoryPropertiesAccountType. \
2630
+ * {@link KnownActiveDirectoryPropertiesAccountType} can be used interchangeably with ActiveDirectoryPropertiesAccountType,
2631
+ * this enum contains the known values that the service supports.
2632
+ * ### Known values supported by the service
2633
+ * **User** \
2634
+ * **Computer**
2635
+ */
2636
+ export type ActiveDirectoryPropertiesAccountType = string;
2637
+
2532
2638
  /** Known values of {@link DefaultSharePermission} that the service accepts. */
2533
2639
  export enum KnownDefaultSharePermission {
2534
2640
  None = "None",
@@ -3497,6 +3603,45 @@ export type ObjectReplicationPoliciesCreateOrUpdateResponse = ObjectReplicationP
3497
3603
  export interface ObjectReplicationPoliciesDeleteOptionalParams
3498
3604
  extends coreClient.OperationOptions {}
3499
3605
 
3606
+ /** Optional parameters. */
3607
+ export interface LocalUsersListOptionalParams
3608
+ extends coreClient.OperationOptions {}
3609
+
3610
+ /** Contains response data for the list operation. */
3611
+ export type LocalUsersListResponse = LocalUsers;
3612
+
3613
+ /** Optional parameters. */
3614
+ export interface LocalUsersGetOptionalParams
3615
+ extends coreClient.OperationOptions {}
3616
+
3617
+ /** Contains response data for the get operation. */
3618
+ export type LocalUsersGetResponse = LocalUser;
3619
+
3620
+ /** Optional parameters. */
3621
+ export interface LocalUsersCreateOrUpdateOptionalParams
3622
+ extends coreClient.OperationOptions {}
3623
+
3624
+ /** Contains response data for the createOrUpdate operation. */
3625
+ export type LocalUsersCreateOrUpdateResponse = LocalUser;
3626
+
3627
+ /** Optional parameters. */
3628
+ export interface LocalUsersDeleteOptionalParams
3629
+ extends coreClient.OperationOptions {}
3630
+
3631
+ /** Optional parameters. */
3632
+ export interface LocalUsersListKeysOptionalParams
3633
+ extends coreClient.OperationOptions {}
3634
+
3635
+ /** Contains response data for the listKeys operation. */
3636
+ export type LocalUsersListKeysResponse = LocalUserKeys;
3637
+
3638
+ /** Optional parameters. */
3639
+ export interface LocalUsersRegeneratePasswordOptionalParams
3640
+ extends coreClient.OperationOptions {}
3641
+
3642
+ /** Contains response data for the regeneratePassword operation. */
3643
+ export type LocalUsersRegeneratePasswordResponse = LocalUserRegeneratePasswordResult;
3644
+
3500
3645
  /** Optional parameters. */
3501
3646
  export interface EncryptionScopesPutOptionalParams
3502
3647
  extends coreClient.OperationOptions {}