Class StorageAccountPropertiesCreateParameters

java.lang.Object
com.azure.resourcemanager.storage.fluent.models.StorageAccountPropertiesCreateParameters
All Implemented Interfaces:
com.azure.json.JsonSerializable<StorageAccountPropertiesCreateParameters>

public final class StorageAccountPropertiesCreateParameters extends Object implements com.azure.json.JsonSerializable<StorageAccountPropertiesCreateParameters>
The parameters used to create the storage account.
  • Constructor Details

    • StorageAccountPropertiesCreateParameters

      public StorageAccountPropertiesCreateParameters()
      Creates an instance of StorageAccountPropertiesCreateParameters class.
  • Method Details

    • allowedCopyScope

      public AllowedCopyScope allowedCopyScope()
      Get the allowedCopyScope property: Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet.
      Returns:
      the allowedCopyScope value.
    • withAllowedCopyScope

      public StorageAccountPropertiesCreateParameters withAllowedCopyScope(AllowedCopyScope allowedCopyScope)
      Set the allowedCopyScope property: Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet.
      Parameters:
      allowedCopyScope - the allowedCopyScope value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • publicNetworkAccess

      public PublicNetworkAccess publicNetworkAccess()
      Get the publicNetworkAccess property: Allow, disallow, or let Network Security Perimeter configuration to evaluate public network access to Storage Account. Value is optional but if passed in, must be 'Enabled', 'Disabled' or 'SecuredByPerimeter'.
      Returns:
      the publicNetworkAccess value.
    • withPublicNetworkAccess

      public StorageAccountPropertiesCreateParameters withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess)
      Set the publicNetworkAccess property: Allow, disallow, or let Network Security Perimeter configuration to evaluate public network access to Storage Account. Value is optional but if passed in, must be 'Enabled', 'Disabled' or 'SecuredByPerimeter'.
      Parameters:
      publicNetworkAccess - the publicNetworkAccess value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • sasPolicy

      public SasPolicy sasPolicy()
      Get the sasPolicy property: SasPolicy assigned to the storage account.
      Returns:
      the sasPolicy value.
    • withSasPolicy

      public StorageAccountPropertiesCreateParameters withSasPolicy(SasPolicy sasPolicy)
      Set the sasPolicy property: SasPolicy assigned to the storage account.
      Parameters:
      sasPolicy - the sasPolicy value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • keyPolicy

      public KeyPolicy keyPolicy()
      Get the keyPolicy property: KeyPolicy assigned to the storage account.
      Returns:
      the keyPolicy value.
    • withKeyPolicy

      public StorageAccountPropertiesCreateParameters withKeyPolicy(KeyPolicy keyPolicy)
      Set the keyPolicy property: KeyPolicy assigned to the storage account.
      Parameters:
      keyPolicy - the keyPolicy value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • customDomain

      public CustomDomain customDomain()
      Get the customDomain property: User domain assigned to the storage account. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property.
      Returns:
      the customDomain value.
    • withCustomDomain

      public StorageAccountPropertiesCreateParameters withCustomDomain(CustomDomain customDomain)
      Set the customDomain property: User domain assigned to the storage account. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property.
      Parameters:
      customDomain - the customDomain value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • encryption

      public Encryption encryption()
      Get the encryption property: Encryption settings to be used for server-side encryption for the storage account.
      Returns:
      the encryption value.
    • withEncryption

      public StorageAccountPropertiesCreateParameters withEncryption(Encryption encryption)
      Set the encryption property: Encryption settings to be used for server-side encryption for the storage account.
      Parameters:
      encryption - the encryption value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • networkRuleSet

      public NetworkRuleSet networkRuleSet()
      Get the networkRuleSet property: Network rule set.
      Returns:
      the networkRuleSet value.
    • withNetworkRuleSet

      public StorageAccountPropertiesCreateParameters withNetworkRuleSet(NetworkRuleSet networkRuleSet)
      Set the networkRuleSet property: Network rule set.
      Parameters:
      networkRuleSet - the networkRuleSet value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • accessTier

      public AccessTier accessTier()
      Get the accessTier property: Required for storage accounts where kind = BlobStorage. The access tier is used for billing. The 'Premium' access tier is the default value for premium block blobs storage account type and it cannot be changed for the premium block blobs storage account type.
      Returns:
      the accessTier value.
    • withAccessTier

      public StorageAccountPropertiesCreateParameters withAccessTier(AccessTier accessTier)
      Set the accessTier property: Required for storage accounts where kind = BlobStorage. The access tier is used for billing. The 'Premium' access tier is the default value for premium block blobs storage account type and it cannot be changed for the premium block blobs storage account type.
      Parameters:
      accessTier - the accessTier value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • azureFilesIdentityBasedAuthentication

      public AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication()
      Get the azureFilesIdentityBasedAuthentication property: Provides the identity based authentication settings for Azure Files.
      Returns:
      the azureFilesIdentityBasedAuthentication value.
    • withAzureFilesIdentityBasedAuthentication

      public StorageAccountPropertiesCreateParameters withAzureFilesIdentityBasedAuthentication(AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication)
      Set the azureFilesIdentityBasedAuthentication property: Provides the identity based authentication settings for Azure Files.
      Parameters:
      azureFilesIdentityBasedAuthentication - the azureFilesIdentityBasedAuthentication value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • enableHttpsTrafficOnly

      public Boolean enableHttpsTrafficOnly()
      Get the enableHttpsTrafficOnly property: Allows https traffic only to storage service if sets to true. The default value is true since API version 2019-04-01.
      Returns:
      the enableHttpsTrafficOnly value.
    • withEnableHttpsTrafficOnly

      public StorageAccountPropertiesCreateParameters withEnableHttpsTrafficOnly(Boolean enableHttpsTrafficOnly)
      Set the enableHttpsTrafficOnly property: Allows https traffic only to storage service if sets to true. The default value is true since API version 2019-04-01.
      Parameters:
      enableHttpsTrafficOnly - the enableHttpsTrafficOnly value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • isSftpEnabled

      public Boolean isSftpEnabled()
      Get the isSftpEnabled property: Enables Secure File Transfer Protocol, if set to true.
      Returns:
      the isSftpEnabled value.
    • withIsSftpEnabled

      public StorageAccountPropertiesCreateParameters withIsSftpEnabled(Boolean isSftpEnabled)
      Set the isSftpEnabled property: Enables Secure File Transfer Protocol, if set to true.
      Parameters:
      isSftpEnabled - the isSftpEnabled value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • isLocalUserEnabled

      public Boolean isLocalUserEnabled()
      Get the isLocalUserEnabled property: Enables local users feature, if set to true.
      Returns:
      the isLocalUserEnabled value.
    • withIsLocalUserEnabled

      public StorageAccountPropertiesCreateParameters withIsLocalUserEnabled(Boolean isLocalUserEnabled)
      Set the isLocalUserEnabled property: Enables local users feature, if set to true.
      Parameters:
      isLocalUserEnabled - the isLocalUserEnabled value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • enableExtendedGroups

      public Boolean enableExtendedGroups()
      Get the enableExtendedGroups property: Enables extended group support with local users feature, if set to true.
      Returns:
      the enableExtendedGroups value.
    • withEnableExtendedGroups

      public StorageAccountPropertiesCreateParameters withEnableExtendedGroups(Boolean enableExtendedGroups)
      Set the enableExtendedGroups property: Enables extended group support with local users feature, if set to true.
      Parameters:
      enableExtendedGroups - the enableExtendedGroups value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • isHnsEnabled

      public Boolean isHnsEnabled()
      Get the isHnsEnabled property: Account HierarchicalNamespace enabled if sets to true.
      Returns:
      the isHnsEnabled value.
    • withIsHnsEnabled

      public StorageAccountPropertiesCreateParameters withIsHnsEnabled(Boolean isHnsEnabled)
      Set the isHnsEnabled property: Account HierarchicalNamespace enabled if sets to true.
      Parameters:
      isHnsEnabled - the isHnsEnabled value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • largeFileSharesState

      public LargeFileSharesState largeFileSharesState()
      Get the largeFileSharesState property: Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled.
      Returns:
      the largeFileSharesState value.
    • withLargeFileSharesState

      public StorageAccountPropertiesCreateParameters withLargeFileSharesState(LargeFileSharesState largeFileSharesState)
      Set the largeFileSharesState property: Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled.
      Parameters:
      largeFileSharesState - the largeFileSharesState value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • routingPreference

      public RoutingPreference routingPreference()
      Get the routingPreference property: Maintains information about the network routing choice opted by the user for data transfer.
      Returns:
      the routingPreference value.
    • withRoutingPreference

      public StorageAccountPropertiesCreateParameters withRoutingPreference(RoutingPreference routingPreference)
      Set the routingPreference property: Maintains information about the network routing choice opted by the user for data transfer.
      Parameters:
      routingPreference - the routingPreference value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • dualStackEndpointPreference

      public DualStackEndpointPreference dualStackEndpointPreference()
      Get the dualStackEndpointPreference property: Maintains information about the Internet protocol opted by the user.
      Returns:
      the dualStackEndpointPreference value.
    • withDualStackEndpointPreference

      public StorageAccountPropertiesCreateParameters withDualStackEndpointPreference(DualStackEndpointPreference dualStackEndpointPreference)
      Set the dualStackEndpointPreference property: Maintains information about the Internet protocol opted by the user.
      Parameters:
      dualStackEndpointPreference - the dualStackEndpointPreference value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • allowBlobPublicAccess

      public Boolean allowBlobPublicAccess()
      Get the allowBlobPublicAccess property: Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is false for this property.
      Returns:
      the allowBlobPublicAccess value.
    • withAllowBlobPublicAccess

      public StorageAccountPropertiesCreateParameters withAllowBlobPublicAccess(Boolean allowBlobPublicAccess)
      Set the allowBlobPublicAccess property: Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is false for this property.
      Parameters:
      allowBlobPublicAccess - the allowBlobPublicAccess value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • minimumTlsVersion

      public MinimumTlsVersion minimumTlsVersion()
      Get the minimumTlsVersion property: Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property.
      Returns:
      the minimumTlsVersion value.
    • withMinimumTlsVersion

      public StorageAccountPropertiesCreateParameters withMinimumTlsVersion(MinimumTlsVersion minimumTlsVersion)
      Set the minimumTlsVersion property: Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property.
      Parameters:
      minimumTlsVersion - the minimumTlsVersion value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • allowSharedKeyAccess

      public Boolean allowSharedKeyAccess()
      Get the allowSharedKeyAccess property: 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.
      Returns:
      the allowSharedKeyAccess value.
    • withAllowSharedKeyAccess

      public StorageAccountPropertiesCreateParameters withAllowSharedKeyAccess(Boolean allowSharedKeyAccess)
      Set the allowSharedKeyAccess property: 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.
      Parameters:
      allowSharedKeyAccess - the allowSharedKeyAccess value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • enableNfsV3

      public Boolean enableNfsV3()
      Get the enableNfsV3 property: NFS 3.0 protocol support enabled if set to true.
      Returns:
      the enableNfsV3 value.
    • withEnableNfsV3

      public StorageAccountPropertiesCreateParameters withEnableNfsV3(Boolean enableNfsV3)
      Set the enableNfsV3 property: NFS 3.0 protocol support enabled if set to true.
      Parameters:
      enableNfsV3 - the enableNfsV3 value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • allowCrossTenantReplication

      public Boolean allowCrossTenantReplication()
      Get the allowCrossTenantReplication property: Allow or disallow cross AAD tenant object replication. Set this property to true for new or existing accounts only if object replication policies will involve storage accounts in different AAD tenants. The default interpretation is false for new accounts to follow best security practices by default.
      Returns:
      the allowCrossTenantReplication value.
    • withAllowCrossTenantReplication

      public StorageAccountPropertiesCreateParameters withAllowCrossTenantReplication(Boolean allowCrossTenantReplication)
      Set the allowCrossTenantReplication property: Allow or disallow cross AAD tenant object replication. Set this property to true for new or existing accounts only if object replication policies will involve storage accounts in different AAD tenants. The default interpretation is false for new accounts to follow best security practices by default.
      Parameters:
      allowCrossTenantReplication - the allowCrossTenantReplication value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • defaultToOAuthAuthentication

      public Boolean defaultToOAuthAuthentication()
      Get the defaultToOAuthAuthentication property: A boolean flag which indicates whether the default authentication is OAuth or not. The default interpretation is false for this property.
      Returns:
      the defaultToOAuthAuthentication value.
    • withDefaultToOAuthAuthentication

      public StorageAccountPropertiesCreateParameters withDefaultToOAuthAuthentication(Boolean defaultToOAuthAuthentication)
      Set the defaultToOAuthAuthentication property: A boolean flag which indicates whether the default authentication is OAuth or not. The default interpretation is false for this property.
      Parameters:
      defaultToOAuthAuthentication - the defaultToOAuthAuthentication value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • immutableStorageWithVersioning

      public ImmutableStorageAccount immutableStorageWithVersioning()
      Get the immutableStorageWithVersioning property: The property is immutable and can only be set to true at the account creation time. When set to true, it enables object level immutability for all the new containers in the account by default.
      Returns:
      the immutableStorageWithVersioning value.
    • withImmutableStorageWithVersioning

      public StorageAccountPropertiesCreateParameters withImmutableStorageWithVersioning(ImmutableStorageAccount immutableStorageWithVersioning)
      Set the immutableStorageWithVersioning property: The property is immutable and can only be set to true at the account creation time. When set to true, it enables object level immutability for all the new containers in the account by default.
      Parameters:
      immutableStorageWithVersioning - the immutableStorageWithVersioning value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • dnsEndpointType

      public DnsEndpointType dnsEndpointType()
      Get the dnsEndpointType property: Allows you to specify the type of endpoint. Set this to AzureDNSZone to create a large number of accounts in a single subscription, which creates accounts in an Azure DNS Zone and the endpoint URL will have an alphanumeric DNS Zone identifier.
      Returns:
      the dnsEndpointType value.
    • withDnsEndpointType

      public StorageAccountPropertiesCreateParameters withDnsEndpointType(DnsEndpointType dnsEndpointType)
      Set the dnsEndpointType property: Allows you to specify the type of endpoint. Set this to AzureDNSZone to create a large number of accounts in a single subscription, which creates accounts in an Azure DNS Zone and the endpoint URL will have an alphanumeric DNS Zone identifier.
      Parameters:
      dnsEndpointType - the dnsEndpointType value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • geoPriorityReplicationStatus

      public GeoPriorityReplicationStatus geoPriorityReplicationStatus()
      Get the geoPriorityReplicationStatus property: Status indicating whether Geo Priority Replication is enabled for the account.
      Returns:
      the geoPriorityReplicationStatus value.
    • withGeoPriorityReplicationStatus

      public StorageAccountPropertiesCreateParameters withGeoPriorityReplicationStatus(GeoPriorityReplicationStatus geoPriorityReplicationStatus)
      Set the geoPriorityReplicationStatus property: Status indicating whether Geo Priority Replication is enabled for the account.
      Parameters:
      geoPriorityReplicationStatus - the geoPriorityReplicationStatus value to set.
      Returns:
      the StorageAccountPropertiesCreateParameters object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<StorageAccountPropertiesCreateParameters>
      Throws:
      IOException
    • fromJson

      public static StorageAccountPropertiesCreateParameters fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of StorageAccountPropertiesCreateParameters from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of StorageAccountPropertiesCreateParameters if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IOException - If an error occurs while reading the StorageAccountPropertiesCreateParameters.