Class DescribedUser

java.lang.Object
software.amazon.awssdk.services.transfer.model.DescribedUser
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<DescribedUser.Builder,DescribedUser>

@Generated("software.amazon.awssdk:codegen") public final class DescribedUser extends Object implements SdkPojo, Serializable, ToCopyableBuilder<DescribedUser.Builder,DescribedUser>

Describes the properties of a user that was specified.

See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
     
  • Method Summary

    Modifier and Type
    Method
    Description
    final String
    arn()
    Specifies the unique Amazon Resource Name (ARN) for the user that was requested to be described.
     
    final boolean
     
    final boolean
    Indicates whether some other object is "equal to" this one by SDK fields.
    final <T> Optional<T>
    getValueForField(String fieldName, Class<T> clazz)
     
    final int
     
    final boolean
    For responses, this returns true if the service returned a value for the HomeDirectoryMappings property.
    final boolean
    For responses, this returns true if the service returned a value for the SshPublicKeys property.
    final boolean
    For responses, this returns true if the service returned a value for the Tags property.
    final String
    The landing directory (folder) for a user when they log in to the server using the client.
    Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible.
    The type of landing directory (folder) that you want your users' home directory to be when they log in to the server.
    final String
    The type of landing directory (folder) that you want your users' home directory to be when they log in to the server.
    final String
    A session policy for your user so that you can use the same Identity and Access Management (IAM) role across multiple users.
    Specifies the full POSIX identity, including user ID (Uid), group ID (Gid), and any secondary groups IDs (SecondaryGids), that controls your users' access to your Amazon Elastic File System (Amazon EFS) file systems.
    final String
    The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users' access to your Amazon S3 bucket or Amazon EFS file system.
    final List<SdkField<?>>
     
    static Class<? extends DescribedUser.Builder>
     
    Specifies the public key portion of the Secure Shell (SSH) keys stored for the described user.
    final List<Tag>
    Specifies the key-value pairs for the user requested.
    Take this object and create a builder that contains all of the current property values of this object.
    final String
    Returns a string representation of this object.
    final String
    Specifies the name of the user that was requested to be described.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder

    copy
  • Method Details

    • arn

      public final String arn()

      Specifies the unique Amazon Resource Name (ARN) for the user that was requested to be described.

      Returns:
      Specifies the unique Amazon Resource Name (ARN) for the user that was requested to be described.
    • homeDirectory

      public final String homeDirectory()

      The landing directory (folder) for a user when they log in to the server using the client.

      A HomeDirectory example is /bucket_name/home/mydirectory.

      The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

      Returns:
      The landing directory (folder) for a user when they log in to the server using the client.

      A HomeDirectory example is /bucket_name/home/mydirectory.

      The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

    • hasHomeDirectoryMappings

      public final boolean hasHomeDirectoryMappings()
      For responses, this returns true if the service returned a value for the HomeDirectoryMappings property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • homeDirectoryMappings

      public final List<HomeDirectoryMapEntry> homeDirectoryMappings()

      Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry and Target pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Identity and Access Management (IAM) role provides access to paths in Target. This value can be set only when HomeDirectoryType is set to LOGICAL.

      In most cases, you can use this value instead of the session policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasHomeDirectoryMappings() method.

      Returns:
      Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry and Target pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Identity and Access Management (IAM) role provides access to paths in Target. This value can be set only when HomeDirectoryType is set to LOGICAL.

      In most cases, you can use this value instead of the session policy to lock your user down to the designated home directory ("chroot"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

    • homeDirectoryType

      public final HomeDirectoryType homeDirectoryType()

      The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

      If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

      If the service returns an enum value that is not available in the current SDK version, homeDirectoryType will return HomeDirectoryType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from homeDirectoryTypeAsString().

      Returns:
      The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

      If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

      See Also:
    • homeDirectoryTypeAsString

      public final String homeDirectoryTypeAsString()

      The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

      If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

      If the service returns an enum value that is not available in the current SDK version, homeDirectoryType will return HomeDirectoryType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from homeDirectoryTypeAsString().

      Returns:
      The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

      If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

      See Also:
    • policy

      public final String policy()

      A session policy for your user so that you can use the same Identity and Access Management (IAM) role across multiple users. This policy scopes down a user's access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

      Returns:
      A session policy for your user so that you can use the same Identity and Access Management (IAM) role across multiple users. This policy scopes down a user's access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.
    • posixProfile

      public final PosixProfile posixProfile()

      Specifies the full POSIX identity, including user ID (Uid), group ID (Gid), and any secondary groups IDs (SecondaryGids), that controls your users' access to your Amazon Elastic File System (Amazon EFS) file systems. The POSIX permissions that are set on files and directories in your file system determine the level of access your users get when transferring files into and out of your Amazon EFS file systems.

      Returns:
      Specifies the full POSIX identity, including user ID (Uid), group ID (Gid), and any secondary groups IDs (SecondaryGids), that controls your users' access to your Amazon Elastic File System (Amazon EFS) file systems. The POSIX permissions that are set on files and directories in your file system determine the level of access your users get when transferring files into and out of your Amazon EFS file systems.
    • role

      public final String role()

      The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users' access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

      Returns:
      The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users' access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
    • hasSshPublicKeys

      public final boolean hasSshPublicKeys()
      For responses, this returns true if the service returned a value for the SshPublicKeys property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • sshPublicKeys

      public final List<SshPublicKey> sshPublicKeys()

      Specifies the public key portion of the Secure Shell (SSH) keys stored for the described user.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSshPublicKeys() method.

      Returns:
      Specifies the public key portion of the Secure Shell (SSH) keys stored for the described user.
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final List<Tag> tags()

      Specifies the key-value pairs for the user requested. Tag can be used to search for and group users for a variety of purposes.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      Specifies the key-value pairs for the user requested. Tag can be used to search for and group users for a variety of purposes.
    • userName

      public final String userName()

      Specifies the name of the user that was requested to be described. User names are used for authentication purposes. This is the string that will be used by your user when they log in to your server.

      Returns:
      Specifies the name of the user that was requested to be described. User names are used for authentication purposes. This is the string that will be used by your user when they log in to your server.
    • toBuilder

      public DescribedUser.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<DescribedUser.Builder,DescribedUser>
      Returns:
      a builder for type T
    • builder

      public static DescribedUser.Builder builder()
    • serializableBuilderClass

      public static Class<? extends DescribedUser.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.