Interface FileSystemProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
FileSystemProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.98.0 (build 00b106d)", date="2024-05-08T21:35:06.800Z") @Stability(Stable) public interface FileSystemProps extends software.amazon.jsii.JsiiSerializable
Properties of EFS FileSystem.

Example:

 import software.amazon.awscdk.services.iam.*;
 Role role = Role.Builder.create(this, "ClientRole")
         .assumedBy(new AnyPrincipal())
         .build();
 FileSystem fileSystem = FileSystem.Builder.create(this, "MyEfsFileSystem")
         .vpc(new Vpc(this, "VPC"))
         .allowAnonymousAccess(true)
         .build();
 fileSystem.grantRead(role);
 
  • Method Details

    • getVpc

      @Stability(Stable) @NotNull IVpc getVpc()
      VPC to launch the file system in.
    • getAllowAnonymousAccess

      @Stability(Stable) @Nullable default Boolean getAllowAnonymousAccess()
      Allow access from anonymous client that doesn't use IAM authentication.

      Default: false when using `grantRead`, `grantWrite`, `grantRootAccess` or set `@aws-cdk/aws-efs:denyAnonymousAccess` feature flag, otherwise true

    • getEnableAutomaticBackups

      @Stability(Stable) @Nullable default Boolean getEnableAutomaticBackups()
      Whether to enable automatic backups for the file system.

      Default: false

    • getEncrypted

      @Stability(Stable) @Nullable default Boolean getEncrypted()
      Defines if the data at rest in the file system is encrypted or not.

      Default: - If your application has the '@aws-cdk/aws-efs:defaultEncryptionAtRest' feature flag set, the default is true, otherwise, the default is false.

    • getFileSystemName

      @Stability(Stable) @Nullable default String getFileSystemName()
      The file system's name.

      Default: - CDK generated name

    • getFileSystemPolicy

      @Stability(Stable) @Nullable default PolicyDocument getFileSystemPolicy()
      File system policy is an IAM resource policy used to control NFS access to an EFS file system.

      Default: none

    • getKmsKey

      @Stability(Stable) @Nullable default IKey getKmsKey()
      The KMS key used for encryption.

      This is required to encrypt the data at rest if

      Default: - if 'encrypted' is true, the default key for EFS (/aws/elasticfilesystem) is used

    • getLifecyclePolicy

      @Stability(Stable) @Nullable default LifecyclePolicy getLifecyclePolicy()
      A policy used by EFS lifecycle management to transition files to the Infrequent Access (IA) storage class.

      Default: - None. EFS will not transition files to the IA storage class.

    • getOneZone

      @Stability(Stable) @Nullable default Boolean getOneZone()
      Whether this is a One Zone file system.

      If enabled, performanceMode must be set to GENERAL_PURPOSE and vpcSubnets cannot be set.

      Default: false

    • getOutOfInfrequentAccessPolicy

      @Stability(Stable) @Nullable default OutOfInfrequentAccessPolicy getOutOfInfrequentAccessPolicy()
      A policy used by EFS lifecycle management to transition files from Infrequent Access (IA) storage class to primary storage class.

      Default: - None. EFS will not transition files from IA storage to primary storage.

    • getPerformanceMode

      @Stability(Stable) @Nullable default PerformanceMode getPerformanceMode()
      The performance mode that the file system will operate under.

      An Amazon EFS file system's performance mode can't be changed after the file system has been created. Updating this property will replace the file system.

      Default: PerformanceMode.GENERAL_PURPOSE

    • getProvisionedThroughputPerSecond

      @Stability(Stable) @Nullable default Size getProvisionedThroughputPerSecond()
      Provisioned throughput for the file system.

      This is a required property if the throughput mode is set to PROVISIONED. Must be at least 1MiB/s.

      Default: - none, errors out

    • getRemovalPolicy

      @Stability(Stable) @Nullable default RemovalPolicy getRemovalPolicy()
      The removal policy to apply to the file system.

      Default: RemovalPolicy.RETAIN

    • getReplicationConfiguration

      @Stability(Stable) @Nullable default ReplicationConfiguration getReplicationConfiguration()
      Replication configuration for the file system.

      Default: - no replication

    • getReplicationOverwriteProtection

      @Stability(Stable) @Nullable default ReplicationOverwriteProtection getReplicationOverwriteProtection()
      Whether to enable the filesystem's replication overwrite protection or not.

      Set false if you want to create a read-only filesystem for use as a replication destination.

      Default: ReplicationOverwriteProtection.ENABLED

      See Also:
    • getSecurityGroup

      @Stability(Stable) @Nullable default ISecurityGroup getSecurityGroup()
      Security Group to assign to this file system.

      Default: - creates new security group which allows all outbound traffic

    • getThroughputMode

      @Stability(Stable) @Nullable default ThroughputMode getThroughputMode()
      Enum to mention the throughput mode of the file system.

      Default: ThroughputMode.BURSTING

    • getTransitionToArchivePolicy

      @Stability(Stable) @Nullable default LifecyclePolicy getTransitionToArchivePolicy()
      The number of days after files were last accessed in primary storage (the Standard storage class) at which to move them to Archive storage.

      Metadata operations such as listing the contents of a directory don't count as file access events.

      Default: - None. EFS will not transition files to Archive storage class.

    • getVpcSubnets

      @Stability(Stable) @Nullable default SubnetSelection getVpcSubnets()
      Which subnets to place the mount target in the VPC.

      Default: - the Vpc default strategy if not specified

    • builder

      @Stability(Stable) static FileSystemProps.Builder builder()
      Returns:
      a FileSystemProps.Builder of FileSystemProps