Class: User

User

Represents a CompleteFTP user. It may be a Windows or Non-Windows user. Instances of this class should be obtained using UserManager.get.

Members

accessControl :String

Access control setting for this user which must be 'Non-Windows' or 'Windows'. If it's set to 'Windows', then the user's file-access permissions will be controlled by Windows. Otherwise, those will be controlled by CompleteFTP.

Note that Windows users may have their permissions controlled by Windows or CompleteFTP but the permissions of non-Windows users are always controlled by CompleteFTP.

Type:
  • String

(readonly) createdTime :Date

Date and time when the user was created.

Type:
  • Date

description :String

The description of this user.

Type:
  • String

email :String

A user's e-mail address may be used in e-mail notifications.

Type:
  • String

enabled :Boolean

Is this user currently enabled?

Type:
  • Boolean

expiryDate :Date

The user's expiry date. After this date the user cannot log in, which is useful for temporary users.

Type:
  • Date

fileEncryptionMode :String

File encryption mode setting for this user which must be 'GlobalEncryption' or 'EncryptionOff'. If it's set to 'GlobalEncryption' and the site also has the equivalent setting enabled (see Site.fileEncryptionMode), all files transferred to the server by this user will be encrypted on the server (encryption at rest). The only way to decrypt files is by transferring them from the server, or via an administrator command.

Type:
  • String

ftpEnabled :Boolean

Is the FTP protocol enabled for this user?

Type:
  • Boolean

ftpsEnabled :Boolean

Is the FTPS protocol enabled for this user? If User.ftpEnabled is false and User.ftpsEnabled is true, then clients must connect using FTPS.

Type:
  • Boolean

fullName :String

The full name of this user.

Type:
  • String

homeDirIsRoot :Boolean

If this option is enabled then the user will see their home folder as the root (i.e. /) for any site they connect to. If it is disabled then the user will see the absolute virtual file-system path.

Type:
  • Boolean

httpEnabled :Boolean

Is the HTTP protocol enabled for this user?

Type:
  • Boolean

httpsEnabled :Boolean

Is the HTTPS protocol enabled for this user?

Type:
  • Boolean

(readonly) id :String

The ID of this user.

Type:
  • String

(readonly) inbuilt :Boolean

Is this an inbuilt user who is created automatically during installation?

Type:
  • Boolean

jssEnabled :Boolean

Is Server-Side Javascript (JSS) enabled for this user? If it is, then JSS will be enabled for .jss files in folders owned by this user.

JSS must also be enabled for the site serving up the page (see Site.jssEnabled).

Type:
  • Boolean

(readonly) modifiedTime :Date

Date and time when the user was last modified.

Type:
  • Date

password :String

The password of this user. Returns "" if site.storeEncryptedPasswords is disabled.

Note that this property is not required for Windows users.

Type:
  • String

(readonly) passwordHash :String

The hash of this user's password.

Type:
  • String

quotaSpeedDownload :Number

A user's bandwidth quota can be set for download, meaning that if the set rate is exceeded, the download will be slowed down.

Note that bandwidth quotas are per site, so if in the Enterprise Edition a user is enabled on two sites, they will have double the bandwidth compared to a single site.

The default is zero means unlimited, and the value is entered in bytes/second.

Type:
  • Number

quotaSpeedUpload :Number

A user's bandwidth quota can be set for upload, meaning that if the set rate is exceeded, the upload will be slowed down.

Note that bandwidth quotas are per site, so if in the Enterprise Edition a user is enabled on two sites, they will have double the bandwidth compared to a single site.

The default is zero means unlimited, and the value is entered in bytes/second.

Type:
  • Number

quotaStorage :Number

A user's disk quota can be set, meaning that uploads will fail if the quota is exceeded. The disk quota is a cumulative limit across all sites (in the Enterprise Edition).

The default is zero means unlimited, and the value is entered in bytes.

Type:
  • Number

readOnly :Boolean

If this flag is set then the user will be unable to make upload, delete and rename files and folders.

Type:
  • Boolean

scpEnabled :Boolean

Is the SCP protocol enabled for this user?

Type:
  • Boolean

sftpEnabled :Boolean

Is the SFTP protocol enabled for this user?

Type:
  • Boolean

sharingEnabled :Boolean

Is File sharing enabled for this user? It must be enabled for users to begin using CompleteBox to share their files.

The CompleteFTP site must have sharing enabled (see Site.sharingEnabled).

Type:
  • Boolean

siteMapping :Array.<SiteMapping>

An array of SiteMapping objects represents the sites and home folders setting for this user.

Type:

sshAuthMethods :Array.<String>

An array of SSH authentication methods ('Password' | 'PublicKey' | 'PublicKeyAndPassword' | 'All') available for this user.

The SSH authentication methods are also specified at the site level (see Site.sshAuthMethods). When a user logs in, only the authentication methods specified at both levels are available. For example, if the site permits password only, and the user permits password and publickey, then only password will be available.

Type:
  • Array.<String>

sshForwardingEnabled :Boolean

Is local SSH TCP/IP forwarding enabled for this user? If it is, then local (to a client machine) SSH tunnels can be established between a client and CompleteFTP, and data will be forwarded on to the host specified when the tunnel was set up. On the client side, the tunnel must be set up by an SSH utility such as PuTTY.

Type:
  • Boolean

sshPublicKeyDSA :Array.<String>

An array of DSA public keys in OpenSSH format that the user may use to authenticate with.

Type:
  • Array.<String>

sshPublicKeyECDSA :Array.<String>

An array of ECDSA public keys in OpenSSH format that the user may use to authenticate with.

Type:
  • Array.<String>

sshPublicKeyRSA :Array.<String>

An array of RSA public keys in OpenSSH format that the user may use to authenticate with.

Type:
  • Array.<String>

sshTerminalEnabled :Boolean

Is SSH terminal access enabled for this user? If it is, SSH terminal access must be enabled for the site as well as the user (see Site.sshTerminalEnabled). Non-Windows users cannot use 'exec' in the terminal to minimize security risks.

Type:
  • Boolean

sshTerminalShell :String

Determines which type of console interface (shell) the user is placed into when they connect with SSH terminal. Currently 'UNIX' and 'JSS' are supported.

Type:
  • String

(readonly) type :String

The type of this user. This must be 'Windows' or 'Non-Windows'.

Type:
  • String

userName :String

The user-name of this user. This is the name they must log in with.

Type:
  • String

Methods

remove()

Deletes this user.