apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    cert-manager.io/inject-ca-from: azureserviceoperator-system/azureserviceoperator-serving-cert
    controller-gen.kubebuilder.io/version: (devel)
  name: storageaccounts.storage.azure.com
spec:
  conversion:
    strategy: Webhook
    webhook:
      clientConfig:
        service:
          name: azureserviceoperator-webhook-service
          namespace: azureserviceoperator-system
          path: /convert
      conversionReviewVersions:
      - v1beta1
  group: storage.azure.com
  names:
    kind: StorageAccount
    listKind: StorageAccountList
    plural: storageaccounts
    singular: storageaccount
  preserveUnknownFields: false
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].severity
      name: Severity
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Reason
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].message
      name: Message
      type: string
    name: v1alpha1api20210401
    schema:
      openAPIV3Schema:
        description: 'Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/resourceDefinitions/storageAccounts'
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            properties:
              accessTier:
                description: 'AccessTier: Required for storage accounts where kind
                  = BlobStorage. The access tier used for billing.'
                enum:
                - Cool
                - Hot
                type: string
              allowBlobPublicAccess:
                description: 'AllowBlobPublicAccess: Allow or disallow public access
                  to all blobs or containers in the storage account. The default interpretation
                  is true for this property.'
                type: boolean
              allowCrossTenantReplication:
                description: 'AllowCrossTenantReplication: Allow or disallow cross
                  AAD tenant object replication. The default interpretation is true
                  for this property.'
                type: boolean
              allowSharedKeyAccess:
                description: '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.'
                type: boolean
              azureFilesIdentityBasedAuthentication:
                description: 'AzureFilesIdentityBasedAuthentication: Settings for
                  Azure Files identity based authentication.'
                properties:
                  activeDirectoryProperties:
                    description: 'ActiveDirectoryProperties: Settings properties for
                      Active Directory (AD).'
                    properties:
                      azureStorageSid:
                        description: 'AzureStorageSid: Specifies the security identifier
                          (SID) for Azure Storage.'
                        type: string
                      domainGuid:
                        description: 'DomainGuid: Specifies the domain GUID.'
                        type: string
                      domainName:
                        description: 'DomainName: Specifies the primary domain that
                          the AD DNS server is authoritative for.'
                        type: string
                      domainSid:
                        description: 'DomainSid: Specifies the security identifier
                          (SID).'
                        type: string
                      forestName:
                        description: 'ForestName: Specifies the Active Directory forest
                          to get.'
                        type: string
                      netBiosDomainName:
                        description: 'NetBiosDomainName: Specifies the NetBIOS domain
                          name.'
                        type: string
                    required:
                    - azureStorageSid
                    - domainGuid
                    - domainName
                    - domainSid
                    - forestName
                    - netBiosDomainName
                    type: object
                  defaultSharePermission:
                    description: 'DefaultSharePermission: Default share permission
                      for users using Kerberos authentication if RBAC role is not
                      assigned.'
                    enum:
                    - None
                    - StorageFileDataSmbShareContributor
                    - StorageFileDataSmbShareElevatedContributor
                    - StorageFileDataSmbShareOwner
                    - StorageFileDataSmbShareReader
                    type: string
                  directoryServiceOptions:
                    description: 'DirectoryServiceOptions: Indicates the directory
                      service used.'
                    enum:
                    - AADDS
                    - AD
                    - None
                    type: string
                required:
                - directoryServiceOptions
                type: object
              azureName:
                description: 'AzureName: The name of the resource in Azure. This is
                  often the same as the name of the resource in Kubernetes but it
                  doesn''t have to be.'
                maxLength: 24
                minLength: 3
                type: string
              customDomain:
                description: 'CustomDomain: The custom domain assigned to this storage
                  account. This can be set via Update.'
                properties:
                  name:
                    description: 'Name: Gets or sets the custom domain name assigned
                      to the storage account. Name is the CNAME source.'
                    type: string
                  useSubDomainName:
                    description: 'UseSubDomainName: Indicates whether indirect CName
                      validation is enabled. Default value is false. This should only
                      be set on updates.'
                    type: boolean
                required:
                - name
                type: object
              encryption:
                description: 'Encryption: The encryption settings on the storage account.'
                properties:
                  identity:
                    description: 'Identity: Encryption identity for the storage account.'
                    properties:
                      userAssignedIdentityReference:
                        description: 'UserAssignedIdentityReference: Resource identifier
                          of the UserAssigned identity to be associated with server-side
                          encryption on the storage account.'
                        properties:
                          armId:
                            description: 'TODO: The below regex may be overly restrictive
                              ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                              The /resourcegroups/{resourceGroupName} bit is optional
                              as some resources are scoped at the subscription level
                              ARMID is mutually exclusive with Group, Kind, Namespace
                              and Name.'
                            pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                            type: string
                          group:
                            description: Group is the Kubernetes group of the resource.
                            type: string
                          kind:
                            description: Kind is the Kubernetes kind of the resource.
                            type: string
                          name:
                            description: Name is the Kubernetes name of the resource.
                            type: string
                        type: object
                    type: object
                  keySource:
                    description: 'KeySource: The encryption keySource (provider).
                      Possible values (case-insensitive):  Microsoft.Storage, Microsoft.Keyvault.'
                    enum:
                    - Microsoft.Keyvault
                    - Microsoft.Storage
                    type: string
                  keyvaultproperties:
                    description: 'Keyvaultproperties: Properties of key vault.'
                    properties:
                      keyname:
                        description: 'Keyname: The name of KeyVault key.'
                        type: string
                      keyvaulturi:
                        description: 'Keyvaulturi: The Uri of KeyVault.'
                        type: string
                      keyversion:
                        description: 'Keyversion: The version of KeyVault key.'
                        type: string
                    type: object
                  requireInfrastructureEncryption:
                    description: 'RequireInfrastructureEncryption: A boolean indicating
                      whether or not the service applies a secondary layer of encryption
                      with platform managed keys for data at rest.'
                    type: boolean
                  services:
                    description: 'Services: A list of services that support encryption.'
                    properties:
                      blob:
                        description: 'Blob: A service that allows server-side encryption
                          to be used.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            enum:
                            - Account
                            - Service
                            type: string
                        type: object
                      file:
                        description: 'File: A service that allows server-side encryption
                          to be used.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            enum:
                            - Account
                            - Service
                            type: string
                        type: object
                      queue:
                        description: 'Queue: A service that allows server-side encryption
                          to be used.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            enum:
                            - Account
                            - Service
                            type: string
                        type: object
                      table:
                        description: 'Table: A service that allows server-side encryption
                          to be used.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            enum:
                            - Account
                            - Service
                            type: string
                        type: object
                    type: object
                required:
                - keySource
                type: object
              extendedLocation:
                description: 'ExtendedLocation: The complex type of the extended location.'
                properties:
                  name:
                    description: 'Name: The name of the extended location.'
                    type: string
                  type:
                    description: 'Type: The type of the extended location.'
                    enum:
                    - EdgeZone
                    type: string
                type: object
              identity:
                description: 'Identity: Identity for the resource.'
                properties:
                  type:
                    description: 'Type: The identity type.'
                    enum:
                    - None
                    - SystemAssigned
                    - SystemAssigned,UserAssigned
                    - UserAssigned
                    type: string
                required:
                - type
                type: object
              isHnsEnabled:
                description: 'IsHnsEnabled: Account HierarchicalNamespace enabled
                  if sets to true.'
                type: boolean
              isNfsV3Enabled:
                description: 'IsNfsV3Enabled: NFS 3.0 protocol support enabled if
                  set to true.'
                type: boolean
              keyPolicy:
                description: 'KeyPolicy: KeyPolicy assigned to the storage account.'
                properties:
                  keyExpirationPeriodInDays:
                    description: 'KeyExpirationPeriodInDays: The key expiration period
                      in days.'
                    type: integer
                required:
                - keyExpirationPeriodInDays
                type: object
              kind:
                description: 'Kind: Required. Indicates the type of storage account.'
                enum:
                - BlobStorage
                - BlockBlobStorage
                - FileStorage
                - Storage
                - StorageV2
                type: string
              largeFileSharesState:
                description: 'LargeFileSharesState: Allow large file shares if sets
                  to Enabled. It cannot be disabled once it is enabled.'
                enum:
                - Disabled
                - Enabled
                type: string
              location:
                description: 'Location: Required. Gets or sets the location of the
                  resource. This will be one of the supported and registered Azure
                  Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo
                  region of a resource cannot be changed once it is created, but if
                  an identical geo region is specified on update, the request will
                  succeed.'
                type: string
              minimumTlsVersion:
                description: 'MinimumTlsVersion: Set the minimum TLS version to be
                  permitted on requests to storage. The default interpretation is
                  TLS 1.0 for this property.'
                enum:
                - TLS1_0
                - TLS1_1
                - TLS1_2
                type: string
              networkAcls:
                description: 'NetworkAcls: Network rule set'
                properties:
                  bypass:
                    description: '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.'
                    enum:
                    - AzureServices
                    - Logging
                    - Metrics
                    - None
                    type: string
                  defaultAction:
                    description: 'DefaultAction: Specifies the default action of allow
                      or deny when no other rules match.'
                    enum:
                    - Allow
                    - Deny
                    type: string
                  ipRules:
                    description: 'IpRules: Sets the IP ACL rules'
                    items:
                      description: 'Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/IPRule'
                      properties:
                        action:
                          description: 'Action: The action of IP ACL rule.'
                          enum:
                          - Allow
                          type: string
                        value:
                          description: 'Value: Specifies the IP or IP range in CIDR
                            format. Only IPV4 address is allowed.'
                          type: string
                      required:
                      - value
                      type: object
                    type: array
                  resourceAccessRules:
                    description: 'ResourceAccessRules: Sets the resource access rules'
                    items:
                      description: 'Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/ResourceAccessRule'
                      properties:
                        resourceReference:
                          description: 'ResourceReference: Resource Id'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                        tenantId:
                          description: 'TenantId: Tenant Id'
                          type: string
                      type: object
                    type: array
                  virtualNetworkRules:
                    description: 'VirtualNetworkRules: Sets the virtual network rules'
                    items:
                      description: 'Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/VirtualNetworkRule'
                      properties:
                        action:
                          description: 'Action: The action of virtual network rule.'
                          enum:
                          - Allow
                          type: string
                        reference:
                          description: 'Reference: Resource ID of a subnet, for example:
                            /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                        state:
                          description: 'State: Gets the state of virtual network rule.'
                          enum:
                          - Deprovisioning
                          - Failed
                          - NetworkSourceDeleted
                          - Provisioning
                          - Succeeded
                          type: string
                      required:
                      - reference
                      type: object
                    type: array
                required:
                - defaultAction
                type: object
              owner:
                description: KnownResourceReference is a resource reference to a known
                  type.
                properties:
                  name:
                    description: This is the name of the Kubernetes resource to reference.
                    type: string
                required:
                - name
                type: object
              routingPreference:
                description: 'RoutingPreference: 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'
                properties:
                  publishInternetEndpoints:
                    description: 'PublishInternetEndpoints: A boolean flag which indicates
                      whether internet routing storage endpoints are to be published'
                    type: boolean
                  publishMicrosoftEndpoints:
                    description: 'PublishMicrosoftEndpoints: A boolean flag which
                      indicates whether microsoft routing storage endpoints are to
                      be published'
                    type: boolean
                  routingChoice:
                    description: 'RoutingChoice: Routing Choice defines the kind of
                      network routing opted by the user.'
                    enum:
                    - InternetRouting
                    - MicrosoftRouting
                    type: string
                type: object
              sasPolicy:
                description: 'SasPolicy: SasPolicy assigned to the storage account.'
                properties:
                  expirationAction:
                    description: 'ExpirationAction: The SAS expiration action. Can
                      only be Log.'
                    enum:
                    - Log
                    type: string
                  sasExpirationPeriod:
                    description: 'SasExpirationPeriod: The SAS expiration period,
                      DD.HH:MM:SS.'
                    type: string
                required:
                - expirationAction
                - sasExpirationPeriod
                type: object
              sku:
                description: 'Sku: The SKU of the storage account.'
                properties:
                  name:
                    enum:
                    - Premium_LRS
                    - Premium_ZRS
                    - Standard_GRS
                    - Standard_GZRS
                    - Standard_LRS
                    - Standard_RAGRS
                    - Standard_RAGZRS
                    - Standard_ZRS
                    type: string
                  tier:
                    enum:
                    - Premium
                    - Standard
                    type: string
                required:
                - name
                type: object
              supportsHttpsTrafficOnly:
                description: 'SupportsHttpsTrafficOnly: Allows https traffic only
                  to storage service if sets to true. The default value is true since
                  API version 2019-04-01.'
                type: boolean
              tags:
                additionalProperties:
                  type: string
                description: 'Tags: Gets or sets a list of key value pairs that describe
                  the resource. These tags can be used for viewing and grouping this
                  resource (across resource groups). A maximum of 15 tags can be provided
                  for a resource. Each tag must have a key with a length no greater
                  than 128 characters and a value with a length no greater than 256
                  characters.'
                type: object
            required:
            - kind
            - owner
            - sku
            type: object
          status:
            properties:
              accessTier:
                description: 'AccessTier: Required for storage accounts where kind
                  = BlobStorage. The access tier used for billing.'
                type: string
              allowBlobPublicAccess:
                description: 'AllowBlobPublicAccess: Allow or disallow public access
                  to all blobs or containers in the storage account. The default interpretation
                  is true for this property.'
                type: boolean
              allowCrossTenantReplication:
                description: 'AllowCrossTenantReplication: Allow or disallow cross
                  AAD tenant object replication. The default interpretation is true
                  for this property.'
                type: boolean
              allowSharedKeyAccess:
                description: '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.'
                type: boolean
              azureFilesIdentityBasedAuthentication:
                description: 'AzureFilesIdentityBasedAuthentication: Provides the
                  identity based authentication settings for Azure Files.'
                properties:
                  activeDirectoryProperties:
                    description: 'ActiveDirectoryProperties: Required if choose AD.'
                    properties:
                      azureStorageSid:
                        description: 'AzureStorageSid: Specifies the security identifier
                          (SID) for Azure Storage.'
                        type: string
                      domainGuid:
                        description: 'DomainGuid: Specifies the domain GUID.'
                        type: string
                      domainName:
                        description: 'DomainName: Specifies the primary domain that
                          the AD DNS server is authoritative for.'
                        type: string
                      domainSid:
                        description: 'DomainSid: Specifies the security identifier
                          (SID).'
                        type: string
                      forestName:
                        description: 'ForestName: Specifies the Active Directory forest
                          to get.'
                        type: string
                      netBiosDomainName:
                        description: 'NetBiosDomainName: Specifies the NetBIOS domain
                          name.'
                        type: string
                    required:
                    - azureStorageSid
                    - domainGuid
                    - domainName
                    - domainSid
                    - forestName
                    - netBiosDomainName
                    type: object
                  defaultSharePermission:
                    description: 'DefaultSharePermission: Default share permission
                      for users using Kerberos authentication if RBAC role is not
                      assigned.'
                    type: string
                  directoryServiceOptions:
                    description: 'DirectoryServiceOptions: Indicates the directory
                      service used.'
                    type: string
                required:
                - directoryServiceOptions
                type: object
              blobRestoreStatus:
                description: 'BlobRestoreStatus: Blob restore status'
                properties:
                  failureReason:
                    description: 'FailureReason: Failure reason when blob restore
                      is failed.'
                    type: string
                  parameters:
                    description: 'Parameters: Blob restore request parameters.'
                    properties:
                      blobRanges:
                        description: 'BlobRanges: Blob ranges to restore.'
                        items:
                          properties:
                            endRange:
                              description: 'EndRange: Blob end range. This is exclusive.
                                Empty means account end.'
                              type: string
                            startRange:
                              description: 'StartRange: Blob start range. This is
                                inclusive. Empty means account start.'
                              type: string
                          required:
                          - endRange
                          - startRange
                          type: object
                        type: array
                      timeToRestore:
                        description: 'TimeToRestore: Restore blob to the specified
                          time.'
                        type: string
                    required:
                    - blobRanges
                    - timeToRestore
                    type: object
                  restoreId:
                    description: 'RestoreId: Id for tracking blob restore request.'
                    type: string
                  status:
                    description: '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.'
                    type: string
                type: object
              conditions:
                description: 'Conditions: The observed state of the resource'
                items:
                  description: Condition defines an extension to status (an observation)
                    of a resource
                  properties:
                    lastTransitionTime:
                      description: LastTransitionTime is the last time the condition
                        transitioned from one status to another.
                      format: date-time
                      type: string
                    message:
                      description: Message is a human readable message indicating
                        details about the transition. This field may be empty.
                      type: string
                    observedGeneration:
                      description: ObservedGeneration is the .metadata.generation
                        that the condition was set based upon. For instance, if .metadata.generation
                        is currently 12, but the .status.condition[x].observedGeneration
                        is 9, the condition is out of date with respect to the current
                        state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: Reason for the condition's last transition. Reasons
                        are upper CamelCase (PascalCase) with no spaces. A reason
                        is always provided, this field will not be empty.
                      type: string
                    severity:
                      description: Severity with which to treat failures of this type
                        of condition. For conditions which have positive polarity
                        (Status == True is their normal/healthy state), this will
                        be omitted when Status == True For conditions which have negative
                        polarity (Status == False is their normal/healthy state),
                        this will be omitted when Status == False. This is omitted
                        in all cases when Status == Unknown
                      type: string
                    status:
                      description: Status of the condition, one of True, False, or
                        Unknown.
                      type: string
                    type:
                      description: Type of condition.
                      type: string
                  required:
                  - lastTransitionTime
                  - reason
                  - status
                  - type
                  type: object
                type: array
              creationTime:
                description: 'CreationTime: Gets the creation date and time of the
                  storage account in UTC.'
                type: string
              customDomain:
                description: 'CustomDomain: Gets the custom domain the user assigned
                  to this storage account.'
                properties:
                  name:
                    description: 'Name: Gets or sets the custom domain name assigned
                      to the storage account. Name is the CNAME source.'
                    type: string
                  useSubDomainName:
                    description: 'UseSubDomainName: Indicates whether indirect CName
                      validation is enabled. Default value is false. This should only
                      be set on updates.'
                    type: boolean
                required:
                - name
                type: object
              encryption:
                description: 'Encryption: Gets the encryption settings on the account.
                  If unspecified, the account is unencrypted.'
                properties:
                  identity:
                    description: 'Identity: The identity to be used with service-side
                      encryption at rest.'
                    properties:
                      userAssignedIdentity:
                        description: 'UserAssignedIdentity: Resource identifier of
                          the UserAssigned identity to be associated with server-side
                          encryption on the storage account.'
                        type: string
                    type: object
                  keySource:
                    description: 'KeySource: The encryption keySource (provider).
                      Possible values (case-insensitive):  Microsoft.Storage, Microsoft.Keyvault'
                    type: string
                  keyvaultproperties:
                    description: 'Keyvaultproperties: Properties provided by key vault.'
                    properties:
                      currentVersionedKeyIdentifier:
                        description: 'CurrentVersionedKeyIdentifier: The object identifier
                          of the current versioned Key Vault Key in use.'
                        type: string
                      keyname:
                        description: 'Keyname: The name of KeyVault key.'
                        type: string
                      keyvaulturi:
                        description: 'Keyvaulturi: The Uri of KeyVault.'
                        type: string
                      keyversion:
                        description: 'Keyversion: The version of KeyVault key.'
                        type: string
                      lastKeyRotationTimestamp:
                        description: 'LastKeyRotationTimestamp: Timestamp of last
                          rotation of the Key Vault Key.'
                        type: string
                    type: object
                  requireInfrastructureEncryption:
                    description: 'RequireInfrastructureEncryption: A boolean indicating
                      whether or not the service applies a secondary layer of encryption
                      with platform managed keys for data at rest.'
                    type: boolean
                  services:
                    description: 'Services: List of services which support encryption.'
                    properties:
                      blob:
                        description: 'Blob: The encryption function of the blob storage
                          service.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            type: string
                          lastEnabledTime:
                            description: 'LastEnabledTime: 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.'
                            type: string
                        type: object
                      file:
                        description: 'File: The encryption function of the file storage
                          service.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            type: string
                          lastEnabledTime:
                            description: 'LastEnabledTime: 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.'
                            type: string
                        type: object
                      queue:
                        description: 'Queue: The encryption function of the queue
                          storage service.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            type: string
                          lastEnabledTime:
                            description: 'LastEnabledTime: 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.'
                            type: string
                        type: object
                      table:
                        description: 'Table: The encryption function of the table
                          storage service.'
                        properties:
                          enabled:
                            description: 'Enabled: A boolean indicating whether or
                              not the service encrypts the data as it is stored.'
                            type: boolean
                          keyType:
                            description: '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.'
                            type: string
                          lastEnabledTime:
                            description: 'LastEnabledTime: 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.'
                            type: string
                        type: object
                    type: object
                required:
                - keySource
                type: object
              extendedLocation:
                description: 'ExtendedLocation: The extendedLocation of the resource.'
                properties:
                  name:
                    description: 'Name: The name of the extended location.'
                    type: string
                  type:
                    description: 'Type: The type of the extended location.'
                    type: string
                type: object
              failoverInProgress:
                description: 'FailoverInProgress: If the failover is in progress,
                  the value will be true, otherwise, it will be null.'
                type: boolean
              geoReplicationStats:
                description: 'GeoReplicationStats: Geo Replication Stats'
                properties:
                  canFailover:
                    description: 'CanFailover: A boolean flag which indicates whether
                      or not account failover is supported for the account.'
                    type: boolean
                  lastSyncTime:
                    description: '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.'
                    type: string
                  status:
                    description: '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.'
                    type: string
                type: object
              id:
                description: 'Id: Fully qualified resource ID for the resource. Ex
                  - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
                type: string
              identity:
                description: 'Identity: The identity of the resource.'
                properties:
                  principalId:
                    description: 'PrincipalId: The principal ID of resource identity.'
                    type: string
                  tenantId:
                    description: 'TenantId: The tenant ID of resource.'
                    type: string
                  type:
                    description: 'Type: The identity type.'
                    type: string
                  userAssignedIdentities:
                    additionalProperties:
                      properties:
                        clientId:
                          description: 'ClientId: The client ID of the identity.'
                          type: string
                        principalId:
                          description: 'PrincipalId: The principal ID of the identity.'
                          type: string
                      type: object
                    description: '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.'
                    type: object
                required:
                - type
                type: object
              isHnsEnabled:
                description: 'IsHnsEnabled: Account HierarchicalNamespace enabled
                  if sets to true.'
                type: boolean
              isNfsV3Enabled:
                description: 'IsNfsV3Enabled: NFS 3.0 protocol support enabled if
                  set to true.'
                type: boolean
              keyCreationTime:
                description: 'KeyCreationTime: Storage account keys creation time.'
                properties:
                  key1:
                    type: string
                  key2:
                    type: string
                type: object
              keyPolicy:
                description: 'KeyPolicy: KeyPolicy assigned to the storage account.'
                properties:
                  keyExpirationPeriodInDays:
                    description: 'KeyExpirationPeriodInDays: The key expiration period
                      in days.'
                    type: integer
                required:
                - keyExpirationPeriodInDays
                type: object
              kind:
                description: 'Kind: Gets the Kind.'
                type: string
              largeFileSharesState:
                description: 'LargeFileSharesState: Allow large file shares if sets
                  to Enabled. It cannot be disabled once it is enabled.'
                type: string
              lastGeoFailoverTime:
                description: '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.'
                type: string
              location:
                description: 'Location: The geo-location where the resource lives'
                type: string
              minimumTlsVersion:
                description: 'MinimumTlsVersion: Set the minimum TLS version to be
                  permitted on requests to storage. The default interpretation is
                  TLS 1.0 for this property.'
                type: string
              name:
                description: 'Name: The name of the resource'
                type: string
              networkAcls:
                description: 'NetworkAcls: Network rule set'
                properties:
                  bypass:
                    description: '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.'
                    type: string
                  defaultAction:
                    description: 'DefaultAction: Specifies the default action of allow
                      or deny when no other rules match.'
                    type: string
                  ipRules:
                    description: 'IpRules: Sets the IP ACL rules'
                    items:
                      properties:
                        action:
                          description: 'Action: The action of IP ACL rule.'
                          type: string
                        value:
                          description: 'Value: Specifies the IP or IP range in CIDR
                            format. Only IPV4 address is allowed.'
                          type: string
                      required:
                      - value
                      type: object
                    type: array
                  resourceAccessRules:
                    description: 'ResourceAccessRules: Sets the resource access rules'
                    items:
                      properties:
                        resourceId:
                          description: 'ResourceId: Resource Id'
                          type: string
                        tenantId:
                          description: 'TenantId: Tenant Id'
                          type: string
                      type: object
                    type: array
                  virtualNetworkRules:
                    description: 'VirtualNetworkRules: Sets the virtual network rules'
                    items:
                      properties:
                        action:
                          description: 'Action: The action of virtual network rule.'
                          type: string
                        id:
                          description: 'Id: Resource ID of a subnet, for example:
                            /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}.'
                          type: string
                        state:
                          description: 'State: Gets the state of virtual network rule.'
                          type: string
                      required:
                      - id
                      type: object
                    type: array
                required:
                - defaultAction
                type: object
              primaryEndpoints:
                description: '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.'
                properties:
                  blob:
                    description: 'Blob: Gets the blob endpoint.'
                    type: string
                  dfs:
                    description: 'Dfs: Gets the dfs endpoint.'
                    type: string
                  file:
                    description: 'File: Gets the file endpoint.'
                    type: string
                  internetEndpoints:
                    description: 'InternetEndpoints: Gets the internet routing storage
                      endpoints'
                    properties:
                      blob:
                        description: 'Blob: Gets the blob endpoint.'
                        type: string
                      dfs:
                        description: 'Dfs: Gets the dfs endpoint.'
                        type: string
                      file:
                        description: 'File: Gets the file endpoint.'
                        type: string
                      web:
                        description: 'Web: Gets the web endpoint.'
                        type: string
                    type: object
                  microsoftEndpoints:
                    description: 'MicrosoftEndpoints: Gets the microsoft routing storage
                      endpoints.'
                    properties:
                      blob:
                        description: 'Blob: Gets the blob endpoint.'
                        type: string
                      dfs:
                        description: 'Dfs: Gets the dfs endpoint.'
                        type: string
                      file:
                        description: 'File: Gets the file endpoint.'
                        type: string
                      queue:
                        description: 'Queue: Gets the queue endpoint.'
                        type: string
                      table:
                        description: 'Table: Gets the table endpoint.'
                        type: string
                      web:
                        description: 'Web: Gets the web endpoint.'
                        type: string
                    type: object
                  queue:
                    description: 'Queue: Gets the queue endpoint.'
                    type: string
                  table:
                    description: 'Table: Gets the table endpoint.'
                    type: string
                  web:
                    description: 'Web: Gets the web endpoint.'
                    type: string
                type: object
              primaryLocation:
                description: 'PrimaryLocation: Gets the location of the primary data
                  center for the storage account.'
                type: string
              privateEndpointConnections:
                description: 'PrivateEndpointConnections: List of private endpoint
                  connection associated with the specified storage account'
                items:
                  properties:
                    id:
                      description: 'Id: Fully qualified resource ID for the resource.
                        Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
                      type: string
                  type: object
                type: array
              provisioningState:
                description: 'ProvisioningState: Gets the status of the storage account
                  at the time the operation was called.'
                type: string
              routingPreference:
                description: 'RoutingPreference: Maintains information about the network
                  routing choice opted by the user for data transfer'
                properties:
                  publishInternetEndpoints:
                    description: 'PublishInternetEndpoints: A boolean flag which indicates
                      whether internet routing storage endpoints are to be published'
                    type: boolean
                  publishMicrosoftEndpoints:
                    description: 'PublishMicrosoftEndpoints: A boolean flag which
                      indicates whether microsoft routing storage endpoints are to
                      be published'
                    type: boolean
                  routingChoice:
                    description: 'RoutingChoice: Routing Choice defines the kind of
                      network routing opted by the user.'
                    type: string
                type: object
              sasPolicy:
                description: 'SasPolicy: SasPolicy assigned to the storage account.'
                properties:
                  expirationAction:
                    description: 'ExpirationAction: The SAS expiration action. Can
                      only be Log.'
                    type: string
                  sasExpirationPeriod:
                    description: 'SasExpirationPeriod: The SAS expiration period,
                      DD.HH:MM:SS.'
                    type: string
                required:
                - expirationAction
                - sasExpirationPeriod
                type: object
              secondaryEndpoints:
                description: '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.'
                properties:
                  blob:
                    description: 'Blob: Gets the blob endpoint.'
                    type: string
                  dfs:
                    description: 'Dfs: Gets the dfs endpoint.'
                    type: string
                  file:
                    description: 'File: Gets the file endpoint.'
                    type: string
                  internetEndpoints:
                    description: 'InternetEndpoints: Gets the internet routing storage
                      endpoints'
                    properties:
                      blob:
                        description: 'Blob: Gets the blob endpoint.'
                        type: string
                      dfs:
                        description: 'Dfs: Gets the dfs endpoint.'
                        type: string
                      file:
                        description: 'File: Gets the file endpoint.'
                        type: string
                      web:
                        description: 'Web: Gets the web endpoint.'
                        type: string
                    type: object
                  microsoftEndpoints:
                    description: 'MicrosoftEndpoints: Gets the microsoft routing storage
                      endpoints.'
                    properties:
                      blob:
                        description: 'Blob: Gets the blob endpoint.'
                        type: string
                      dfs:
                        description: 'Dfs: Gets the dfs endpoint.'
                        type: string
                      file:
                        description: 'File: Gets the file endpoint.'
                        type: string
                      queue:
                        description: 'Queue: Gets the queue endpoint.'
                        type: string
                      table:
                        description: 'Table: Gets the table endpoint.'
                        type: string
                      web:
                        description: 'Web: Gets the web endpoint.'
                        type: string
                    type: object
                  queue:
                    description: 'Queue: Gets the queue endpoint.'
                    type: string
                  table:
                    description: 'Table: Gets the table endpoint.'
                    type: string
                  web:
                    description: 'Web: Gets the web endpoint.'
                    type: string
                type: object
              secondaryLocation:
                description: 'SecondaryLocation: Gets the location of the geo-replicated
                  secondary for the storage account. Only available if the accountType
                  is Standard_GRS or Standard_RAGRS.'
                type: string
              sku:
                description: 'Sku: Gets the SKU.'
                properties:
                  name:
                    type: string
                  tier:
                    type: string
                required:
                - name
                type: object
              statusOfPrimary:
                description: 'StatusOfPrimary: Gets the status indicating whether
                  the primary location of the storage account is available or unavailable.'
                type: string
              statusOfSecondary:
                description: '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.'
                type: string
              supportsHttpsTrafficOnly:
                description: 'SupportsHttpsTrafficOnly: Allows https traffic only
                  to storage service if sets to true.'
                type: boolean
              tags:
                additionalProperties:
                  type: string
                description: 'Tags: Resource tags.'
                type: object
              type:
                description: 'Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines"
                  or "Microsoft.Storage/storageAccounts"'
                type: string
            type: object
        type: object
    served: true
    storage: false
    subresources:
      status: {}
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].severity
      name: Severity
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Reason
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].message
      name: Message
      type: string
    name: v1alpha1api20210401storage
    schema:
      openAPIV3Schema:
        description: 'Storage version of v1alpha1api20210401.StorageAccount Generated
          from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/resourceDefinitions/storageAccounts'
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: Storage version of v1alpha1api20210401.StorageAccounts_Spec
            properties:
              $propertyBag:
                additionalProperties:
                  type: string
                description: PropertyBag is an unordered set of stashed information
                  that used for properties not directly supported by storage resources,
                  allowing for full fidelity round trip conversions
                type: object
              accessTier:
                type: string
              allowBlobPublicAccess:
                type: boolean
              allowCrossTenantReplication:
                type: boolean
              allowSharedKeyAccess:
                type: boolean
              azureFilesIdentityBasedAuthentication:
                description: 'Storage version of v1alpha1api20210401.AzureFilesIdentityBasedAuthentication
                  Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/AzureFilesIdentityBasedAuthentication'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  activeDirectoryProperties:
                    description: 'Storage version of v1alpha1api20210401.ActiveDirectoryProperties
                      Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/ActiveDirectoryProperties'
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      azureStorageSid:
                        type: string
                      domainGuid:
                        type: string
                      domainName:
                        type: string
                      domainSid:
                        type: string
                      forestName:
                        type: string
                      netBiosDomainName:
                        type: string
                    type: object
                  defaultSharePermission:
                    type: string
                  directoryServiceOptions:
                    type: string
                type: object
              azureName:
                description: 'AzureName: The name of the resource in Azure. This is
                  often the same as the name of the resource in Kubernetes but it
                  doesn''t have to be.'
                maxLength: 24
                minLength: 3
                type: string
              customDomain:
                description: 'Storage version of v1alpha1api20210401.CustomDomain
                  Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/CustomDomain'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  useSubDomainName:
                    type: boolean
                type: object
              encryption:
                description: 'Storage version of v1alpha1api20210401.Encryption Generated
                  from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/Encryption'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  identity:
                    description: 'Storage version of v1alpha1api20210401.EncryptionIdentity
                      Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/EncryptionIdentity'
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      userAssignedIdentityReference:
                        description: 'UserAssignedIdentityReference: Resource identifier
                          of the UserAssigned identity to be associated with server-side
                          encryption on the storage account.'
                        properties:
                          armId:
                            description: 'TODO: The below regex may be overly restrictive
                              ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                              The /resourcegroups/{resourceGroupName} bit is optional
                              as some resources are scoped at the subscription level
                              ARMID is mutually exclusive with Group, Kind, Namespace
                              and Name.'
                            pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                            type: string
                          group:
                            description: Group is the Kubernetes group of the resource.
                            type: string
                          kind:
                            description: Kind is the Kubernetes kind of the resource.
                            type: string
                          name:
                            description: Name is the Kubernetes name of the resource.
                            type: string
                        type: object
                    type: object
                  keySource:
                    type: string
                  keyvaultproperties:
                    description: 'Storage version of v1alpha1api20210401.KeyVaultProperties
                      Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/KeyVaultProperties'
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      keyname:
                        type: string
                      keyvaulturi:
                        type: string
                      keyversion:
                        type: string
                    type: object
                  requireInfrastructureEncryption:
                    type: boolean
                  services:
                    description: 'Storage version of v1alpha1api20210401.EncryptionServices
                      Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/EncryptionServices'
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      blob:
                        description: 'Storage version of v1alpha1api20210401.EncryptionService
                          Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/EncryptionService'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                        type: object
                      file:
                        description: 'Storage version of v1alpha1api20210401.EncryptionService
                          Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/EncryptionService'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                        type: object
                      queue:
                        description: 'Storage version of v1alpha1api20210401.EncryptionService
                          Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/EncryptionService'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                        type: object
                      table:
                        description: 'Storage version of v1alpha1api20210401.EncryptionService
                          Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/EncryptionService'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                        type: object
                    type: object
                type: object
              extendedLocation:
                description: 'Storage version of v1alpha1api20210401.ExtendedLocation
                  Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/ExtendedLocation'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  type:
                    type: string
                type: object
              identity:
                description: 'Storage version of v1alpha1api20210401.Identity Generated
                  from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/Identity'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  type:
                    type: string
                type: object
              isHnsEnabled:
                type: boolean
              isNfsV3Enabled:
                type: boolean
              keyPolicy:
                description: 'Storage version of v1alpha1api20210401.KeyPolicy Generated
                  from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/KeyPolicy'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  keyExpirationPeriodInDays:
                    type: integer
                type: object
              kind:
                type: string
              largeFileSharesState:
                type: string
              location:
                type: string
              minimumTlsVersion:
                type: string
              networkAcls:
                description: 'Storage version of v1alpha1api20210401.NetworkRuleSet
                  Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/NetworkRuleSet'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  bypass:
                    type: string
                  defaultAction:
                    type: string
                  ipRules:
                    items:
                      description: 'Storage version of v1alpha1api20210401.IPRule
                        Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/IPRule'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        action:
                          type: string
                        value:
                          type: string
                      type: object
                    type: array
                  resourceAccessRules:
                    items:
                      description: 'Storage version of v1alpha1api20210401.ResourceAccessRule
                        Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/ResourceAccessRule'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        resourceReference:
                          description: 'ResourceReference: Resource Id'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                        tenantId:
                          type: string
                      type: object
                    type: array
                  virtualNetworkRules:
                    items:
                      description: 'Storage version of v1alpha1api20210401.VirtualNetworkRule
                        Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/VirtualNetworkRule'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        action:
                          type: string
                        reference:
                          description: 'Reference: Resource ID of a subnet, for example:
                            /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                        state:
                          type: string
                      required:
                      - reference
                      type: object
                    type: array
                type: object
              originalVersion:
                type: string
              owner:
                description: KnownResourceReference is a resource reference to a known
                  type.
                properties:
                  name:
                    description: This is the name of the Kubernetes resource to reference.
                    type: string
                required:
                - name
                type: object
              routingPreference:
                description: 'Storage version of v1alpha1api20210401.RoutingPreference
                  Generated from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/RoutingPreference'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  publishInternetEndpoints:
                    type: boolean
                  publishMicrosoftEndpoints:
                    type: boolean
                  routingChoice:
                    type: string
                type: object
              sasPolicy:
                description: 'Storage version of v1alpha1api20210401.SasPolicy Generated
                  from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/SasPolicy'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  expirationAction:
                    type: string
                  sasExpirationPeriod:
                    type: string
                type: object
              sku:
                description: 'Storage version of v1alpha1api20210401.Sku Generated
                  from: https://schema.management.azure.com/schemas/2021-04-01/Microsoft.Storage.json#/definitions/Sku'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  tier:
                    type: string
                type: object
              supportsHttpsTrafficOnly:
                type: boolean
              tags:
                additionalProperties:
                  type: string
                type: object
            required:
            - owner
            type: object
          status:
            description: Storage version of v1alpha1api20210401.StorageAccount_Status
            properties:
              $propertyBag:
                additionalProperties:
                  type: string
                description: PropertyBag is an unordered set of stashed information
                  that used for properties not directly supported by storage resources,
                  allowing for full fidelity round trip conversions
                type: object
              accessTier:
                type: string
              allowBlobPublicAccess:
                type: boolean
              allowCrossTenantReplication:
                type: boolean
              allowSharedKeyAccess:
                type: boolean
              azureFilesIdentityBasedAuthentication:
                description: Storage version of v1alpha1api20210401.AzureFilesIdentityBasedAuthentication_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  activeDirectoryProperties:
                    description: Storage version of v1alpha1api20210401.ActiveDirectoryProperties_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      azureStorageSid:
                        type: string
                      domainGuid:
                        type: string
                      domainName:
                        type: string
                      domainSid:
                        type: string
                      forestName:
                        type: string
                      netBiosDomainName:
                        type: string
                    type: object
                  defaultSharePermission:
                    type: string
                  directoryServiceOptions:
                    type: string
                type: object
              blobRestoreStatus:
                description: Storage version of v1alpha1api20210401.BlobRestoreStatus_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  failureReason:
                    type: string
                  parameters:
                    description: Storage version of v1alpha1api20210401.BlobRestoreParameters_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      blobRanges:
                        items:
                          description: Storage version of v1alpha1api20210401.BlobRestoreRange_Status
                          properties:
                            $propertyBag:
                              additionalProperties:
                                type: string
                              description: PropertyBag is an unordered set of stashed
                                information that used for properties not directly
                                supported by storage resources, allowing for full
                                fidelity round trip conversions
                              type: object
                            endRange:
                              type: string
                            startRange:
                              type: string
                          type: object
                        type: array
                      timeToRestore:
                        type: string
                    type: object
                  restoreId:
                    type: string
                  status:
                    type: string
                type: object
              conditions:
                items:
                  description: Condition defines an extension to status (an observation)
                    of a resource
                  properties:
                    lastTransitionTime:
                      description: LastTransitionTime is the last time the condition
                        transitioned from one status to another.
                      format: date-time
                      type: string
                    message:
                      description: Message is a human readable message indicating
                        details about the transition. This field may be empty.
                      type: string
                    observedGeneration:
                      description: ObservedGeneration is the .metadata.generation
                        that the condition was set based upon. For instance, if .metadata.generation
                        is currently 12, but the .status.condition[x].observedGeneration
                        is 9, the condition is out of date with respect to the current
                        state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: Reason for the condition's last transition. Reasons
                        are upper CamelCase (PascalCase) with no spaces. A reason
                        is always provided, this field will not be empty.
                      type: string
                    severity:
                      description: Severity with which to treat failures of this type
                        of condition. For conditions which have positive polarity
                        (Status == True is their normal/healthy state), this will
                        be omitted when Status == True For conditions which have negative
                        polarity (Status == False is their normal/healthy state),
                        this will be omitted when Status == False. This is omitted
                        in all cases when Status == Unknown
                      type: string
                    status:
                      description: Status of the condition, one of True, False, or
                        Unknown.
                      type: string
                    type:
                      description: Type of condition.
                      type: string
                  required:
                  - lastTransitionTime
                  - reason
                  - status
                  - type
                  type: object
                type: array
              creationTime:
                type: string
              customDomain:
                description: Storage version of v1alpha1api20210401.CustomDomain_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  useSubDomainName:
                    type: boolean
                type: object
              encryption:
                description: Storage version of v1alpha1api20210401.Encryption_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  identity:
                    description: Storage version of v1alpha1api20210401.EncryptionIdentity_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      userAssignedIdentity:
                        type: string
                    type: object
                  keySource:
                    type: string
                  keyvaultproperties:
                    description: Storage version of v1alpha1api20210401.KeyVaultProperties_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      currentVersionedKeyIdentifier:
                        type: string
                      keyname:
                        type: string
                      keyvaulturi:
                        type: string
                      keyversion:
                        type: string
                      lastKeyRotationTimestamp:
                        type: string
                    type: object
                  requireInfrastructureEncryption:
                    type: boolean
                  services:
                    description: Storage version of v1alpha1api20210401.EncryptionServices_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      blob:
                        description: Storage version of v1alpha1api20210401.EncryptionService_Status
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                          lastEnabledTime:
                            type: string
                        type: object
                      file:
                        description: Storage version of v1alpha1api20210401.EncryptionService_Status
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                          lastEnabledTime:
                            type: string
                        type: object
                      queue:
                        description: Storage version of v1alpha1api20210401.EncryptionService_Status
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                          lastEnabledTime:
                            type: string
                        type: object
                      table:
                        description: Storage version of v1alpha1api20210401.EncryptionService_Status
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          enabled:
                            type: boolean
                          keyType:
                            type: string
                          lastEnabledTime:
                            type: string
                        type: object
                    type: object
                type: object
              extendedLocation:
                description: Storage version of v1alpha1api20210401.ExtendedLocation_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  type:
                    type: string
                type: object
              failoverInProgress:
                type: boolean
              geoReplicationStats:
                description: Storage version of v1alpha1api20210401.GeoReplicationStats_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  canFailover:
                    type: boolean
                  lastSyncTime:
                    type: string
                  status:
                    type: string
                type: object
              id:
                type: string
              identity:
                description: Storage version of v1alpha1api20210401.Identity_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  principalId:
                    type: string
                  tenantId:
                    type: string
                  type:
                    type: string
                  userAssignedIdentities:
                    additionalProperties:
                      description: Storage version of v1alpha1api20210401.UserAssignedIdentity_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        clientId:
                          type: string
                        principalId:
                          type: string
                      type: object
                    type: object
                type: object
              isHnsEnabled:
                type: boolean
              isNfsV3Enabled:
                type: boolean
              keyCreationTime:
                description: Storage version of v1alpha1api20210401.KeyCreationTime_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  key1:
                    type: string
                  key2:
                    type: string
                type: object
              keyPolicy:
                description: Storage version of v1alpha1api20210401.KeyPolicy_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  keyExpirationPeriodInDays:
                    type: integer
                type: object
              kind:
                type: string
              largeFileSharesState:
                type: string
              lastGeoFailoverTime:
                type: string
              location:
                type: string
              minimumTlsVersion:
                type: string
              name:
                type: string
              networkAcls:
                description: Storage version of v1alpha1api20210401.NetworkRuleSet_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  bypass:
                    type: string
                  defaultAction:
                    type: string
                  ipRules:
                    items:
                      description: Storage version of v1alpha1api20210401.IPRule_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        action:
                          type: string
                        value:
                          type: string
                      type: object
                    type: array
                  resourceAccessRules:
                    items:
                      description: Storage version of v1alpha1api20210401.ResourceAccessRule_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        resourceId:
                          type: string
                        tenantId:
                          type: string
                      type: object
                    type: array
                  virtualNetworkRules:
                    items:
                      description: Storage version of v1alpha1api20210401.VirtualNetworkRule_Status
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        action:
                          type: string
                        id:
                          type: string
                        state:
                          type: string
                      type: object
                    type: array
                type: object
              primaryEndpoints:
                description: Storage version of v1alpha1api20210401.Endpoints_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  blob:
                    type: string
                  dfs:
                    type: string
                  file:
                    type: string
                  internetEndpoints:
                    description: Storage version of v1alpha1api20210401.StorageAccountInternetEndpoints_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      blob:
                        type: string
                      dfs:
                        type: string
                      file:
                        type: string
                      web:
                        type: string
                    type: object
                  microsoftEndpoints:
                    description: Storage version of v1alpha1api20210401.StorageAccountMicrosoftEndpoints_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      blob:
                        type: string
                      dfs:
                        type: string
                      file:
                        type: string
                      queue:
                        type: string
                      table:
                        type: string
                      web:
                        type: string
                    type: object
                  queue:
                    type: string
                  table:
                    type: string
                  web:
                    type: string
                type: object
              primaryLocation:
                type: string
              privateEndpointConnections:
                items:
                  description: Storage version of v1alpha1api20210401.PrivateEndpointConnection_Status_SubResourceEmbedded
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    id:
                      type: string
                  type: object
                type: array
              provisioningState:
                type: string
              routingPreference:
                description: Storage version of v1alpha1api20210401.RoutingPreference_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  publishInternetEndpoints:
                    type: boolean
                  publishMicrosoftEndpoints:
                    type: boolean
                  routingChoice:
                    type: string
                type: object
              sasPolicy:
                description: Storage version of v1alpha1api20210401.SasPolicy_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  expirationAction:
                    type: string
                  sasExpirationPeriod:
                    type: string
                type: object
              secondaryEndpoints:
                description: Storage version of v1alpha1api20210401.Endpoints_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  blob:
                    type: string
                  dfs:
                    type: string
                  file:
                    type: string
                  internetEndpoints:
                    description: Storage version of v1alpha1api20210401.StorageAccountInternetEndpoints_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      blob:
                        type: string
                      dfs:
                        type: string
                      file:
                        type: string
                      web:
                        type: string
                    type: object
                  microsoftEndpoints:
                    description: Storage version of v1alpha1api20210401.StorageAccountMicrosoftEndpoints_Status
                    properties:
                      $propertyBag:
                        additionalProperties:
                          type: string
                        description: PropertyBag is an unordered set of stashed information
                          that used for properties not directly supported by storage
                          resources, allowing for full fidelity round trip conversions
                        type: object
                      blob:
                        type: string
                      dfs:
                        type: string
                      file:
                        type: string
                      queue:
                        type: string
                      table:
                        type: string
                      web:
                        type: string
                    type: object
                  queue:
                    type: string
                  table:
                    type: string
                  web:
                    type: string
                type: object
              secondaryLocation:
                type: string
              sku:
                description: Storage version of v1alpha1api20210401.Sku_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  tier:
                    type: string
                type: object
              statusOfPrimary:
                type: string
              statusOfSecondary:
                type: string
              supportsHttpsTrafficOnly:
                type: boolean
              tags:
                additionalProperties:
                  type: string
                type: object
              type:
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []
