/
storage_account_status_arm_types_gen.go
711 lines (542 loc) · 33.6 KB
/
storage_account_status_arm_types_gen.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
// Code generated by azure-service-operator-codegen. DO NOT EDIT.
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
package v1api20230101
// The storage account.
type StorageAccount_STATUS_ARM struct {
// ExtendedLocation: The extendedLocation of the resource.
ExtendedLocation *ExtendedLocation_STATUS_ARM `json:"extendedLocation,omitempty"`
// Id: Fully qualified resource ID for the resource. Ex -
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
Id *string `json:"id,omitempty"`
// Identity: The identity of the resource.
Identity *Identity_STATUS_ARM `json:"identity,omitempty"`
// Kind: Gets the Kind.
Kind *StorageAccount_Kind_STATUS `json:"kind,omitempty"`
// Location: The geo-location where the resource lives
Location *string `json:"location,omitempty"`
// Name: The name of the resource
Name *string `json:"name,omitempty"`
// Properties: Properties of the storage account.
Properties *StorageAccountProperties_STATUS_ARM `json:"properties,omitempty"`
// Sku: Gets the SKU.
Sku *Sku_STATUS_ARM `json:"sku,omitempty"`
// Tags: Resource tags.
Tags map[string]string `json:"tags"`
// Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty"`
}
// The complex type of the extended location.
type ExtendedLocation_STATUS_ARM struct {
// Name: The name of the extended location.
Name *string `json:"name,omitempty"`
// Type: The type of the extended location.
Type *ExtendedLocationType_STATUS `json:"type,omitempty"`
}
// Identity for the resource.
type Identity_STATUS_ARM struct {
// PrincipalId: The principal ID of resource identity.
PrincipalId *string `json:"principalId,omitempty"`
// TenantId: The tenant ID of resource.
TenantId *string `json:"tenantId,omitempty"`
// Type: The identity type.
Type *Identity_Type_STATUS `json:"type,omitempty"`
// UserAssignedIdentities: Gets or sets a list of key value pairs that describe the set of User Assigned identities that
// will be used with this storage account. The key is the ARM resource identifier of the identity. Only 1 User Assigned
// identity is permitted here.
UserAssignedIdentities map[string]UserAssignedIdentity_STATUS_ARM `json:"userAssignedIdentities"`
}
// The SKU of the storage account.
type Sku_STATUS_ARM struct {
// Name: The SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called
// accountType.
Name *SkuName_STATUS `json:"name,omitempty"`
// Tier: The SKU tier. This is based on the SKU name.
Tier *Tier_STATUS `json:"tier,omitempty"`
}
type StorageAccount_Kind_STATUS string
const (
StorageAccount_Kind_STATUS_BlobStorage = StorageAccount_Kind_STATUS("BlobStorage")
StorageAccount_Kind_STATUS_BlockBlobStorage = StorageAccount_Kind_STATUS("BlockBlobStorage")
StorageAccount_Kind_STATUS_FileStorage = StorageAccount_Kind_STATUS("FileStorage")
StorageAccount_Kind_STATUS_Storage = StorageAccount_Kind_STATUS("Storage")
StorageAccount_Kind_STATUS_StorageV2 = StorageAccount_Kind_STATUS("StorageV2")
)
// Mapping from string to StorageAccount_Kind_STATUS
var storageAccount_Kind_STATUS_Values = map[string]StorageAccount_Kind_STATUS{
"blobstorage": StorageAccount_Kind_STATUS_BlobStorage,
"blockblobstorage": StorageAccount_Kind_STATUS_BlockBlobStorage,
"filestorage": StorageAccount_Kind_STATUS_FileStorage,
"storage": StorageAccount_Kind_STATUS_Storage,
"storagev2": StorageAccount_Kind_STATUS_StorageV2,
}
// Properties of the storage account.
type StorageAccountProperties_STATUS_ARM struct {
// AccessTier: Required for storage accounts where kind = BlobStorage. The access tier is used for billing. The 'Premium'
// access tier is the default value for premium block blobs storage account type and it cannot be changed for the premium
// block blobs storage account type.
AccessTier *StorageAccountProperties_AccessTier_STATUS `json:"accessTier,omitempty"`
// AccountMigrationInProgress: If customer initiated account migration is in progress, the value will be true else it will
// be null.
AccountMigrationInProgress *bool `json:"accountMigrationInProgress,omitempty"`
// AllowBlobPublicAccess: Allow or disallow public access to all blobs or containers in the storage account. The default
// interpretation is false for this property.
AllowBlobPublicAccess *bool `json:"allowBlobPublicAccess,omitempty"`
// AllowCrossTenantReplication: Allow or disallow cross AAD tenant object replication. Set this property to true for new or
// existing accounts only if object replication policies will involve storage accounts in different AAD tenants. The
// default interpretation is false for new accounts to follow best security practices by default.
AllowCrossTenantReplication *bool `json:"allowCrossTenantReplication,omitempty"`
// AllowSharedKeyAccess: Indicates whether the storage account permits requests to be authorized with the account access
// key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure
// Active Directory (Azure AD). The default value is null, which is equivalent to true.
AllowSharedKeyAccess *bool `json:"allowSharedKeyAccess,omitempty"`
// AllowedCopyScope: Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet.
AllowedCopyScope *StorageAccountProperties_AllowedCopyScope_STATUS `json:"allowedCopyScope,omitempty"`
// AzureFilesIdentityBasedAuthentication: Provides the identity based authentication settings for Azure Files.
AzureFilesIdentityBasedAuthentication *AzureFilesIdentityBasedAuthentication_STATUS_ARM `json:"azureFilesIdentityBasedAuthentication,omitempty"`
// BlobRestoreStatus: Blob restore status
BlobRestoreStatus *BlobRestoreStatus_STATUS_ARM `json:"blobRestoreStatus,omitempty"`
// CreationTime: Gets the creation date and time of the storage account in UTC.
CreationTime *string `json:"creationTime,omitempty"`
// CustomDomain: Gets the custom domain the user assigned to this storage account.
CustomDomain *CustomDomain_STATUS_ARM `json:"customDomain,omitempty"`
// DefaultToOAuthAuthentication: A boolean flag which indicates whether the default authentication is OAuth or not. The
// default interpretation is false for this property.
DefaultToOAuthAuthentication *bool `json:"defaultToOAuthAuthentication,omitempty"`
// DnsEndpointType: Allows you to specify the type of endpoint. Set this to AzureDNSZone to create a large number of
// accounts in a single subscription, which creates accounts in an Azure DNS Zone and the endpoint URL will have an
// alphanumeric DNS Zone identifier.
DnsEndpointType *StorageAccountProperties_DnsEndpointType_STATUS `json:"dnsEndpointType,omitempty"`
// Encryption: Encryption settings to be used for server-side encryption for the storage account.
Encryption *Encryption_STATUS_ARM `json:"encryption,omitempty"`
// FailoverInProgress: If the failover is in progress, the value will be true, otherwise, it will be null.
FailoverInProgress *bool `json:"failoverInProgress,omitempty"`
// GeoReplicationStats: Geo Replication Stats
GeoReplicationStats *GeoReplicationStats_STATUS_ARM `json:"geoReplicationStats,omitempty"`
// ImmutableStorageWithVersioning: 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.
ImmutableStorageWithVersioning *ImmutableStorageAccount_STATUS_ARM `json:"immutableStorageWithVersioning,omitempty"`
// IsHnsEnabled: Account HierarchicalNamespace enabled if sets to true.
IsHnsEnabled *bool `json:"isHnsEnabled,omitempty"`
// IsLocalUserEnabled: Enables local users feature, if set to true
IsLocalUserEnabled *bool `json:"isLocalUserEnabled,omitempty"`
// IsNfsV3Enabled: NFS 3.0 protocol support enabled if set to true.
IsNfsV3Enabled *bool `json:"isNfsV3Enabled,omitempty"`
// IsSftpEnabled: Enables Secure File Transfer Protocol, if set to true
IsSftpEnabled *bool `json:"isSftpEnabled,omitempty"`
// IsSkuConversionBlocked: This property will be set to true or false on an event of ongoing migration. Default value is
// null.
IsSkuConversionBlocked *bool `json:"isSkuConversionBlocked,omitempty"`
// KeyCreationTime: Storage account keys creation time.
KeyCreationTime *KeyCreationTime_STATUS_ARM `json:"keyCreationTime,omitempty"`
// KeyPolicy: KeyPolicy assigned to the storage account.
KeyPolicy *KeyPolicy_STATUS_ARM `json:"keyPolicy,omitempty"`
// LargeFileSharesState: Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled.
LargeFileSharesState *StorageAccountProperties_LargeFileSharesState_STATUS `json:"largeFileSharesState,omitempty"`
// LastGeoFailoverTime: Gets the timestamp of the most recent instance of a failover to the secondary location. Only the
// most recent timestamp is retained. This element is not returned if there has never been a failover instance. Only
// available if the accountType is Standard_GRS or Standard_RAGRS.
LastGeoFailoverTime *string `json:"lastGeoFailoverTime,omitempty"`
// MinimumTlsVersion: Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS
// 1.0 for this property.
MinimumTlsVersion *StorageAccountProperties_MinimumTlsVersion_STATUS `json:"minimumTlsVersion,omitempty"`
// NetworkAcls: Network rule set
NetworkAcls *NetworkRuleSet_STATUS_ARM `json:"networkAcls,omitempty"`
// PrimaryEndpoints: Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object. Note that
// Standard_ZRS and Premium_LRS accounts only return the blob endpoint.
PrimaryEndpoints *Endpoints_STATUS_ARM `json:"primaryEndpoints,omitempty"`
// PrimaryLocation: Gets the location of the primary data center for the storage account.
PrimaryLocation *string `json:"primaryLocation,omitempty"`
// PrivateEndpointConnections: List of private endpoint connection associated with the specified storage account
PrivateEndpointConnections []PrivateEndpointConnection_STATUS_ARM `json:"privateEndpointConnections"`
// ProvisioningState: Gets the status of the storage account at the time the operation was called.
ProvisioningState *StorageAccountProperties_ProvisioningState_STATUS `json:"provisioningState,omitempty"`
// PublicNetworkAccess: Allow or disallow public network access to Storage Account. Value is optional but if passed in,
// must be 'Enabled' or 'Disabled'.
PublicNetworkAccess *StorageAccountProperties_PublicNetworkAccess_STATUS `json:"publicNetworkAccess,omitempty"`
// RoutingPreference: Maintains information about the network routing choice opted by the user for data transfer
RoutingPreference *RoutingPreference_STATUS_ARM `json:"routingPreference,omitempty"`
// SasPolicy: SasPolicy assigned to the storage account.
SasPolicy *SasPolicy_STATUS_ARM `json:"sasPolicy,omitempty"`
// SecondaryEndpoints: Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object from the
// secondary location of the storage account. Only available if the SKU name is Standard_RAGRS.
SecondaryEndpoints *Endpoints_STATUS_ARM `json:"secondaryEndpoints,omitempty"`
// SecondaryLocation: Gets the location of the geo-replicated secondary for the storage account. Only available if the
// accountType is Standard_GRS or Standard_RAGRS.
SecondaryLocation *string `json:"secondaryLocation,omitempty"`
// StatusOfPrimary: Gets the status indicating whether the primary location of the storage account is available or
// unavailable.
StatusOfPrimary *StorageAccountProperties_StatusOfPrimary_STATUS `json:"statusOfPrimary,omitempty"`
// StatusOfSecondary: Gets the status indicating whether the secondary location of the storage account is available or
// unavailable. Only available if the SKU name is Standard_GRS or Standard_RAGRS.
StatusOfSecondary *StorageAccountProperties_StatusOfSecondary_STATUS `json:"statusOfSecondary,omitempty"`
// StorageAccountSkuConversionStatus: This property is readOnly and is set by server during asynchronous storage account
// sku conversion operations.
StorageAccountSkuConversionStatus *StorageAccountSkuConversionStatus_STATUS_ARM `json:"storageAccountSkuConversionStatus,omitempty"`
// SupportsHttpsTrafficOnly: Allows https traffic only to storage service if sets to true.
SupportsHttpsTrafficOnly *bool `json:"supportsHttpsTrafficOnly,omitempty"`
}
// Settings for Azure Files identity based authentication.
type AzureFilesIdentityBasedAuthentication_STATUS_ARM struct {
// ActiveDirectoryProperties: Required if directoryServiceOptions are AD, optional if they are AADKERB.
ActiveDirectoryProperties *ActiveDirectoryProperties_STATUS_ARM `json:"activeDirectoryProperties,omitempty"`
// DefaultSharePermission: Default share permission for users using Kerberos authentication if RBAC role is not assigned.
DefaultSharePermission *AzureFilesIdentityBasedAuthentication_DefaultSharePermission_STATUS `json:"defaultSharePermission,omitempty"`
// DirectoryServiceOptions: Indicates the directory service used. Note that this enum may be extended in the future.
DirectoryServiceOptions *AzureFilesIdentityBasedAuthentication_DirectoryServiceOptions_STATUS `json:"directoryServiceOptions,omitempty"`
}
// Blob restore status.
type BlobRestoreStatus_STATUS_ARM struct {
// FailureReason: Failure reason when blob restore is failed.
FailureReason *string `json:"failureReason,omitempty"`
// Parameters: Blob restore request parameters.
Parameters *BlobRestoreParameters_STATUS_ARM `json:"parameters,omitempty"`
// RestoreId: Id for tracking blob restore request.
RestoreId *string `json:"restoreId,omitempty"`
// Status: The status of blob restore progress. Possible values are: - InProgress: Indicates that blob restore is ongoing.
// - Complete: Indicates that blob restore has been completed successfully. - Failed: Indicates that blob restore is failed.
Status *BlobRestoreStatus_Status_STATUS `json:"status,omitempty"`
}
// The custom domain assigned to this storage account. This can be set via Update.
type CustomDomain_STATUS_ARM struct {
// Name: Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.
Name *string `json:"name,omitempty"`
// UseSubDomainName: Indicates whether indirect CName validation is enabled. Default value is false. This should only be
// set on updates.
UseSubDomainName *bool `json:"useSubDomainName,omitempty"`
}
// The encryption settings on the storage account.
type Encryption_STATUS_ARM struct {
// Identity: The identity to be used with service-side encryption at rest.
Identity *EncryptionIdentity_STATUS_ARM `json:"identity,omitempty"`
// KeySource: The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Storage,
// Microsoft.Keyvault
KeySource *Encryption_KeySource_STATUS `json:"keySource,omitempty"`
// Keyvaultproperties: Properties provided by key vault.
Keyvaultproperties *KeyVaultProperties_STATUS_ARM `json:"keyvaultproperties,omitempty"`
// RequireInfrastructureEncryption: A boolean indicating whether or not the service applies a secondary layer of encryption
// with platform managed keys for data at rest.
RequireInfrastructureEncryption *bool `json:"requireInfrastructureEncryption,omitempty"`
// Services: List of services which support encryption.
Services *EncryptionServices_STATUS_ARM `json:"services,omitempty"`
}
// The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object.
type Endpoints_STATUS_ARM struct {
// Blob: Gets the blob endpoint.
Blob *string `json:"blob,omitempty"`
// Dfs: Gets the dfs endpoint.
Dfs *string `json:"dfs,omitempty"`
// File: Gets the file endpoint.
File *string `json:"file,omitempty"`
// InternetEndpoints: Gets the internet routing storage endpoints
InternetEndpoints *StorageAccountInternetEndpoints_STATUS_ARM `json:"internetEndpoints,omitempty"`
// MicrosoftEndpoints: Gets the microsoft routing storage endpoints.
MicrosoftEndpoints *StorageAccountMicrosoftEndpoints_STATUS_ARM `json:"microsoftEndpoints,omitempty"`
// Queue: Gets the queue endpoint.
Queue *string `json:"queue,omitempty"`
// Table: Gets the table endpoint.
Table *string `json:"table,omitempty"`
// Web: Gets the web endpoint.
Web *string `json:"web,omitempty"`
}
// The type of extendedLocation.
type ExtendedLocationType_STATUS string
const ExtendedLocationType_STATUS_EdgeZone = ExtendedLocationType_STATUS("EdgeZone")
// Mapping from string to ExtendedLocationType_STATUS
var extendedLocationType_STATUS_Values = map[string]ExtendedLocationType_STATUS{
"edgezone": ExtendedLocationType_STATUS_EdgeZone,
}
// Statistics related to replication for storage account's Blob, Table, Queue and File services. It is only available when
// geo-redundant replication is enabled for the storage account.
type GeoReplicationStats_STATUS_ARM struct {
// CanFailover: A boolean flag which indicates whether or not account failover is supported for the account.
CanFailover *bool `json:"canFailover,omitempty"`
// CanPlannedFailover: A boolean flag which indicates whether or not planned account failover is supported for the account.
CanPlannedFailover *bool `json:"canPlannedFailover,omitempty"`
// LastSyncTime: All primary writes preceding this UTC date/time value are guaranteed to be available for read operations.
// Primary writes following this point in time may or may not be available for reads. Element may be default value if value
// of LastSyncTime is not available, this can happen if secondary is offline or we are in bootstrap.
LastSyncTime *string `json:"lastSyncTime,omitempty"`
// PostFailoverRedundancy: The redundancy type of the account after an account failover is performed.
PostFailoverRedundancy *GeoReplicationStats_PostFailoverRedundancy_STATUS `json:"postFailoverRedundancy,omitempty"`
// PostPlannedFailoverRedundancy: The redundancy type of the account after a planned account failover is performed.
PostPlannedFailoverRedundancy *GeoReplicationStats_PostPlannedFailoverRedundancy_STATUS `json:"postPlannedFailoverRedundancy,omitempty"`
// Status: The status of the secondary location. Possible values are: - Live: Indicates that the secondary location is
// active and operational. - Bootstrap: Indicates initial synchronization from the primary location to the secondary
// location is in progress.This typically occurs when replication is first enabled. - Unavailable: Indicates that the
// secondary location is temporarily unavailable.
Status *GeoReplicationStats_Status_STATUS `json:"status,omitempty"`
}
type Identity_Type_STATUS string
const (
Identity_Type_STATUS_None = Identity_Type_STATUS("None")
Identity_Type_STATUS_SystemAssigned = Identity_Type_STATUS("SystemAssigned")
Identity_Type_STATUS_SystemAssignedUserAssigned = Identity_Type_STATUS("SystemAssigned,UserAssigned")
Identity_Type_STATUS_UserAssigned = Identity_Type_STATUS("UserAssigned")
)
// Mapping from string to Identity_Type_STATUS
var identity_Type_STATUS_Values = map[string]Identity_Type_STATUS{
"none": Identity_Type_STATUS_None,
"systemassigned": Identity_Type_STATUS_SystemAssigned,
"systemassigned,userassigned": Identity_Type_STATUS_SystemAssignedUserAssigned,
"userassigned": Identity_Type_STATUS_UserAssigned,
}
// This property enables and defines account-level immutability. Enabling the feature auto-enables Blob Versioning.
type ImmutableStorageAccount_STATUS_ARM struct {
// Enabled: A boolean flag which enables account-level immutability. All the containers under such an account have
// object-level immutability enabled by default.
Enabled *bool `json:"enabled,omitempty"`
// ImmutabilityPolicy: Specifies the default account-level immutability policy which is inherited and applied to objects
// that do not possess an explicit immutability policy at the object level. The object-level immutability policy has higher
// precedence than the container-level immutability policy, which has a higher precedence than the account-level
// immutability policy.
ImmutabilityPolicy *AccountImmutabilityPolicyProperties_STATUS_ARM `json:"immutabilityPolicy,omitempty"`
}
// Storage account keys creation time.
type KeyCreationTime_STATUS_ARM struct {
Key1 *string `json:"key1,omitempty"`
Key2 *string `json:"key2,omitempty"`
}
// KeyPolicy assigned to the storage account.
type KeyPolicy_STATUS_ARM struct {
// KeyExpirationPeriodInDays: The key expiration period in days.
KeyExpirationPeriodInDays *int `json:"keyExpirationPeriodInDays,omitempty"`
}
// Network rule set
type NetworkRuleSet_STATUS_ARM struct {
// Bypass: Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of
// Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.
Bypass *NetworkRuleSet_Bypass_STATUS `json:"bypass,omitempty"`
// DefaultAction: Specifies the default action of allow or deny when no other rules match.
DefaultAction *NetworkRuleSet_DefaultAction_STATUS `json:"defaultAction,omitempty"`
// IpRules: Sets the IP ACL rules
IpRules []IPRule_STATUS_ARM `json:"ipRules"`
// ResourceAccessRules: Sets the resource access rules
ResourceAccessRules []ResourceAccessRule_STATUS_ARM `json:"resourceAccessRules"`
// VirtualNetworkRules: Sets the virtual network rules
VirtualNetworkRules []VirtualNetworkRule_STATUS_ARM `json:"virtualNetworkRules"`
}
// The Private Endpoint Connection resource.
type PrivateEndpointConnection_STATUS_ARM struct {
// Id: Fully qualified resource ID for the resource. Ex -
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
Id *string `json:"id,omitempty"`
}
// 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
type RoutingPreference_STATUS_ARM struct {
// PublishInternetEndpoints: A boolean flag which indicates whether internet routing storage endpoints are to be published
PublishInternetEndpoints *bool `json:"publishInternetEndpoints,omitempty"`
// PublishMicrosoftEndpoints: A boolean flag which indicates whether microsoft routing storage endpoints are to be published
PublishMicrosoftEndpoints *bool `json:"publishMicrosoftEndpoints,omitempty"`
// RoutingChoice: Routing Choice defines the kind of network routing opted by the user.
RoutingChoice *RoutingPreference_RoutingChoice_STATUS `json:"routingChoice,omitempty"`
}
// SasPolicy assigned to the storage account.
type SasPolicy_STATUS_ARM struct {
// ExpirationAction: The SAS expiration action. Can only be Log.
ExpirationAction *SasPolicy_ExpirationAction_STATUS `json:"expirationAction,omitempty"`
// SasExpirationPeriod: The SAS expiration period, DD.HH:MM:SS.
SasExpirationPeriod *string `json:"sasExpirationPeriod,omitempty"`
}
// The SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called
// accountType.
type SkuName_STATUS string
const (
SkuName_STATUS_Premium_LRS = SkuName_STATUS("Premium_LRS")
SkuName_STATUS_Premium_ZRS = SkuName_STATUS("Premium_ZRS")
SkuName_STATUS_Standard_GRS = SkuName_STATUS("Standard_GRS")
SkuName_STATUS_Standard_GZRS = SkuName_STATUS("Standard_GZRS")
SkuName_STATUS_Standard_LRS = SkuName_STATUS("Standard_LRS")
SkuName_STATUS_Standard_RAGRS = SkuName_STATUS("Standard_RAGRS")
SkuName_STATUS_Standard_RAGZRS = SkuName_STATUS("Standard_RAGZRS")
SkuName_STATUS_Standard_ZRS = SkuName_STATUS("Standard_ZRS")
)
// Mapping from string to SkuName_STATUS
var skuName_STATUS_Values = map[string]SkuName_STATUS{
"premium_lrs": SkuName_STATUS_Premium_LRS,
"premium_zrs": SkuName_STATUS_Premium_ZRS,
"standard_grs": SkuName_STATUS_Standard_GRS,
"standard_gzrs": SkuName_STATUS_Standard_GZRS,
"standard_lrs": SkuName_STATUS_Standard_LRS,
"standard_ragrs": SkuName_STATUS_Standard_RAGRS,
"standard_ragzrs": SkuName_STATUS_Standard_RAGZRS,
"standard_zrs": SkuName_STATUS_Standard_ZRS,
}
// This defines the sku conversion status object for asynchronous sku conversions.
type StorageAccountSkuConversionStatus_STATUS_ARM struct {
// EndTime: This property represents the sku conversion end time.
EndTime *string `json:"endTime,omitempty"`
// SkuConversionStatus: This property indicates the current sku conversion status.
SkuConversionStatus *StorageAccountSkuConversionStatus_SkuConversionStatus_STATUS `json:"skuConversionStatus,omitempty"`
// StartTime: This property represents the sku conversion start time.
StartTime *string `json:"startTime,omitempty"`
// TargetSkuName: This property represents the target sku name to which the account sku is being converted asynchronously.
TargetSkuName *SkuName_STATUS `json:"targetSkuName,omitempty"`
}
// The SKU tier. This is based on the SKU name.
type Tier_STATUS string
const (
Tier_STATUS_Premium = Tier_STATUS("Premium")
Tier_STATUS_Standard = Tier_STATUS("Standard")
)
// Mapping from string to Tier_STATUS
var tier_STATUS_Values = map[string]Tier_STATUS{
"premium": Tier_STATUS_Premium,
"standard": Tier_STATUS_Standard,
}
// UserAssignedIdentity for the resource.
type UserAssignedIdentity_STATUS_ARM struct {
// ClientId: The client ID of the identity.
ClientId *string `json:"clientId,omitempty"`
// PrincipalId: The principal ID of the identity.
PrincipalId *string `json:"principalId,omitempty"`
}
// This defines account-level immutability policy properties.
type AccountImmutabilityPolicyProperties_STATUS_ARM struct {
// AllowProtectedAppendWrites: This property can only be changed for disabled and unlocked time-based retention policies.
// When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only
// new blocks can be added and any existing blocks cannot be modified or deleted.
AllowProtectedAppendWrites *bool `json:"allowProtectedAppendWrites,omitempty"`
// ImmutabilityPeriodSinceCreationInDays: The immutability period for the blobs in the container since the policy creation,
// in days.
ImmutabilityPeriodSinceCreationInDays *int `json:"immutabilityPeriodSinceCreationInDays,omitempty"`
// State: The ImmutabilityPolicy state defines the mode of the policy. Disabled state disables the policy, Unlocked state
// allows increase and decrease of immutability retention time and also allows toggling allowProtectedAppendWrites
// property, Locked state only allows the increase of the immutability retention time. A policy can only be created in a
// Disabled or Unlocked state and can be toggled between the two states. Only a policy in an Unlocked state can transition
// to a Locked state which cannot be reverted.
State *AccountImmutabilityPolicyProperties_State_STATUS `json:"state,omitempty"`
}
// Settings properties for Active Directory (AD).
type ActiveDirectoryProperties_STATUS_ARM struct {
// AccountType: Specifies the Active Directory account type for Azure Storage.
AccountType *ActiveDirectoryProperties_AccountType_STATUS `json:"accountType,omitempty"`
// AzureStorageSid: Specifies the security identifier (SID) for Azure Storage.
AzureStorageSid *string `json:"azureStorageSid,omitempty"`
// DomainGuid: Specifies the domain GUID.
DomainGuid *string `json:"domainGuid,omitempty"`
// DomainName: Specifies the primary domain that the AD DNS server is authoritative for.
DomainName *string `json:"domainName,omitempty"`
// DomainSid: Specifies the security identifier (SID).
DomainSid *string `json:"domainSid,omitempty"`
// ForestName: Specifies the Active Directory forest to get.
ForestName *string `json:"forestName,omitempty"`
// NetBiosDomainName: Specifies the NetBIOS domain name.
NetBiosDomainName *string `json:"netBiosDomainName,omitempty"`
// SamAccountName: Specifies the Active Directory SAMAccountName for Azure Storage.
SamAccountName *string `json:"samAccountName,omitempty"`
}
// Blob restore parameters
type BlobRestoreParameters_STATUS_ARM struct {
// BlobRanges: Blob ranges to restore.
BlobRanges []BlobRestoreRange_STATUS_ARM `json:"blobRanges"`
// TimeToRestore: Restore blob to the specified time.
TimeToRestore *string `json:"timeToRestore,omitempty"`
}
// Encryption identity for the storage account.
type EncryptionIdentity_STATUS_ARM struct {
// FederatedIdentityClientId: 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.
FederatedIdentityClientId *string `json:"federatedIdentityClientId,omitempty"`
// UserAssignedIdentity: Resource identifier of the UserAssigned identity to be associated with server-side encryption on
// the storage account.
UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty"`
}
// A list of services that support encryption.
type EncryptionServices_STATUS_ARM struct {
// Blob: The encryption function of the blob storage service.
Blob *EncryptionService_STATUS_ARM `json:"blob,omitempty"`
// File: The encryption function of the file storage service.
File *EncryptionService_STATUS_ARM `json:"file,omitempty"`
// Queue: The encryption function of the queue storage service.
Queue *EncryptionService_STATUS_ARM `json:"queue,omitempty"`
// Table: The encryption function of the table storage service.
Table *EncryptionService_STATUS_ARM `json:"table,omitempty"`
}
// IP rule with specific IP or IP range in CIDR format.
type IPRule_STATUS_ARM struct {
// Action: The action of IP ACL rule.
Action *IPRule_Action_STATUS `json:"action,omitempty"`
// Value: Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed.
Value *string `json:"value,omitempty"`
}
// Properties of key vault.
type KeyVaultProperties_STATUS_ARM struct {
// CurrentVersionedKeyExpirationTimestamp: This is a read only property that represents the expiration time of the current
// version of the customer managed key used for encryption.
CurrentVersionedKeyExpirationTimestamp *string `json:"currentVersionedKeyExpirationTimestamp,omitempty"`
// CurrentVersionedKeyIdentifier: The object identifier of the current versioned Key Vault Key in use.
CurrentVersionedKeyIdentifier *string `json:"currentVersionedKeyIdentifier,omitempty"`
// Keyname: The name of KeyVault key.
Keyname *string `json:"keyname,omitempty"`
// Keyvaulturi: The Uri of KeyVault.
Keyvaulturi *string `json:"keyvaulturi,omitempty"`
// Keyversion: The version of KeyVault key.
Keyversion *string `json:"keyversion,omitempty"`
// LastKeyRotationTimestamp: Timestamp of last rotation of the Key Vault Key.
LastKeyRotationTimestamp *string `json:"lastKeyRotationTimestamp,omitempty"`
}
// Resource Access Rule.
type ResourceAccessRule_STATUS_ARM struct {
// ResourceId: Resource Id
ResourceId *string `json:"resourceId,omitempty"`
// TenantId: Tenant Id
TenantId *string `json:"tenantId,omitempty"`
}
// The URIs that are used to perform a retrieval of a public blob, file, web or dfs object via a internet routing endpoint.
type StorageAccountInternetEndpoints_STATUS_ARM struct {
// Blob: Gets the blob endpoint.
Blob *string `json:"blob,omitempty"`
// Dfs: Gets the dfs endpoint.
Dfs *string `json:"dfs,omitempty"`
// File: Gets the file endpoint.
File *string `json:"file,omitempty"`
// Web: Gets the web endpoint.
Web *string `json:"web,omitempty"`
}
// The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object via a microsoft routing
// endpoint.
type StorageAccountMicrosoftEndpoints_STATUS_ARM struct {
// Blob: Gets the blob endpoint.
Blob *string `json:"blob,omitempty"`
// Dfs: Gets the dfs endpoint.
Dfs *string `json:"dfs,omitempty"`
// File: Gets the file endpoint.
File *string `json:"file,omitempty"`
// Queue: Gets the queue endpoint.
Queue *string `json:"queue,omitempty"`
// Table: Gets the table endpoint.
Table *string `json:"table,omitempty"`
// Web: Gets the web endpoint.
Web *string `json:"web,omitempty"`
}
// Virtual Network rule.
type VirtualNetworkRule_STATUS_ARM struct {
// Action: The action of virtual network rule.
Action *VirtualNetworkRule_Action_STATUS `json:"action,omitempty"`
// Id: Resource ID of a subnet, for example:
// /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}.
Id *string `json:"id,omitempty"`
// State: Gets the state of virtual network rule.
State *VirtualNetworkRule_State_STATUS `json:"state,omitempty"`
}
// Blob range
type BlobRestoreRange_STATUS_ARM struct {
// EndRange: Blob end range. This is exclusive. Empty means account end.
EndRange *string `json:"endRange,omitempty"`
// StartRange: Blob start range. This is inclusive. Empty means account start.
StartRange *string `json:"startRange,omitempty"`
}
// A service that allows server-side encryption to be used.
type EncryptionService_STATUS_ARM struct {
// Enabled: 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.
Enabled *bool `json:"enabled,omitempty"`
// KeyType: Encryption key type to be used for the encryption service. 'Account' key type implies that an account-scoped
// encryption key will be used. 'Service' key type implies that a default service key is used.
KeyType *EncryptionService_KeyType_STATUS `json:"keyType,omitempty"`
// LastEnabledTime: 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.
LastEnabledTime *string `json:"lastEnabledTime,omitempty"`
}