Search Results for

    Show / Hide Table of Contents

    Interface IUser

    The system entity for a user.

    See https://help.lemonedge.com/help/open-architecture/admin/users/intro.html for more information

    Inherited Members
    IBaseEntity.GetLabel(string)
    IBaseEntity.SetLabel(string, string)
    IBaseEntity.SetSilentLabel(string, string)
    IBaseEntity.AccountID
    IBaseEntity.ID
    IBaseEntity.LastUpdated
    IBaseEntity.ModifiedByUserID
    IBaseEntity.CanvasID
    IBaseEntity.AlgorithmStepID
    IBaseEntity.SafeID
    IEquatable<IBaseEntity>.Equals(IBaseEntity)
    INotifyPropertyChanged.PropertyChanged
    INotifyPropertyChanging.PropertyChanging
    ICloneableAsync.Clone(object)
    ICloneableAsync.CopyFromSource(object)
    ICanTrackProperties.HasTrackedPropertyChanged(string)
    ICanTrackProperties.OriginalTrackedPropertyValue(string)
    ICanTrackProperties.OriginalTrackedPropertyValue<T>(string)
    ICanTrackProperties.ClearTrackedOriginalValues()
    ICanTrackProperties.GetAllOriginalTrackedPropertyValues()
    ISetCopier.GetCopyInfo(IEntityUpdater)
    Namespace: LemonEdge.API.Entities.Administration
    Assembly: LemonEdge.API.dll
    Syntax
    [EntityDefinition(EntityID.Users, "dbo.LT_Users", "User", LabelColumn = "EmailLogin", CustomToString = true, SelectWithNoLock = true, HelpURL = "help/open-architecture/admin/users/intro.html")]
    [EntityIndex(Name = "EmailLogin", ColumnNames = new string[] { "EmailLogin" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IsClustered = false, IsUnique = true)]
    [EntityIndex(Name = "DomainLogin", ColumnNames = new string[] { "WindowsLoginDomain" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IsClustered = false, IsUnique = false)]
    [DefaultEntityIcon(ImageType.User)]
    public interface IUser : IBaseEntityWithPermissions, IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties, ISetCopier

    Properties

    AllowMultiLoginAsService

    Indicates whether the user can be logged in from multiple devices at the same time (as when scaling a service account in a web service).

    Declaration
    [EntityDescription("Indicates whether the user can be logged in from multiple devices at the same time (as when scaling a service account in a web service).")]
    [EntityProperty(SQLType.Bit, false, "0")]
    [HardCodedDefaultValueOnNew("0")]
    bool AllowMultiLoginAsService { get; set; }
    Property Value
    Type Description
    bool

    DefaultNotificationTypeID

    The default method the system uses to notify the user. You can have other custom notification methods if you've implemented the INotificationType interface in our API.

    Declaration
    [EntityDescription("The default method the system uses to notify the user. You can have other custom notification methods if you've implemented the IWatcherNotificationType interface in our API.")]
    [EntityProperty(SQLType.UniqueIdentifier, false, "'A756452F-2E7C-4D9F-A92A-AF97AC07B004'")]
    [HardCodedDefaultValueOnNew("A756452F-2E7C-4D9F-A92A-AF97AC07B004")]
    Guid DefaultNotificationTypeID { get; set; }
    Property Value
    Type Description
    Guid

    DefaultTeamID

    Links to ITeam. The current teams set of permissions that the user is running the system under.

    A user must be a member of at least one team otherwise they will be unable to login.

    Declaration
    [EntityDescription("The current teams set of permissions that the user is running the system under. A user must be a member of at least one team otherwise they will be unable to login.")]
    [EntityProperty(SQLType.UniqueIdentifier, false)]
    [EntityRelationship(EntityID.Teams, "ID", SingleJoinType.One, "Default Team", "Users Default Teams", LinkToItemInSet = false, PreventAutoConstraint = true)]
    [UserTeamValid]
    Guid DefaultTeamID { get; set; }
    Property Value
    Type Description
    Guid

    EmailLogin

    [Key] The unique login for this user - normally an email address.

    The system will use this as the default email for notifications if required.

    Declaration
    [EntityDescription("The globally unique login for this user - normally an email address.")]
    [EntityProperty(SQLType.NVarChar, 500, false)]
    [EntityKeyProperty]
    [Required]
    [GlobalUniqueEmail]
    [Unique]
    [DBTrackChanges]
    string EmailLogin { get; set; }
    Property Value
    Type Description
    string

    HashedAccessToken

    The hashed access token for this user

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, true)]
    [IgnoreOnClone]
    string HashedAccessToken { get; set; }
    Property Value
    Type Description
    string

    HashedPassword

    The hashed password for this user

    Declaration
    [EntityProperty(SQLType.VarBinary, false)]
    [IgnoreOnClone]
    byte[] HashedPassword { get; set; }
    Property Value
    Type Description
    byte[]

    LastIPAddress

    The IP Address this user last logged in from

    Declaration
    [EntityDescription("The IP Address this user last logged in from")]
    [EntityProperty(SQLType.NVarChar, 32, true)]
    [IgnoreOnClone]
    string LastIPAddress { get; set; }
    Property Value
    Type Description
    string

    LastLoggedInRoleID

    Links to IRole. Indicates the role the user is currently running the system in.

    Declaration
    [EntityDescription("Indicates the role the user is currently running the system in.")]
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.Roles, "ID", SingleJoinType.ZeroToOne, "Last Logged In Role", "Users Last Logged In", LinkToItemInSet = false)]
    [IgnoreOnClone]
    Guid? LastLoggedInRoleID { get; set; }
    Property Value
    Type Description
    Guid?

    LastLogin

    The date/time of the last successful login of this user

    Declaration
    [EntityDescription("The date/time of the last successful login of this user")]
    [EntityProperty(SQLType.DateTimeOffset, true)]
    [IgnoreOnClone]
    DateTimeOffset? LastLogin { get; set; }
    Property Value
    Type Description
    DateTimeOffset?

    LockInCanvas

    Indicates the user is locked into running in this canvas only, they can not log into the main system or any other canvas.

    Declaration
    [EntityDescription("Indicates the user is locked into running in this canvas only, they can not log into the main system or any other canvas.")]
    [EntityProperty(SQLType.Bit, false, "0")]
    bool LockInCanvas { get; set; }
    Property Value
    Type Description
    bool

    LockInSafe

    Indicates the user is locked into running in this safe only, they can not create items in the main system

    Declaration
    [EntityDescription("Indicates the user is locked into running in this safe only, they can not create items in the main system.")]
    [EntityProperty(SQLType.Bit, false, "0")]
    bool LockInSafe { get; set; }
    Property Value
    Type Description
    bool

    LogQueryStats

    Indicates query stats should be logged (Default) by this user. Can be turned off for migration users, or large import users for performance of complex calculations.

    Declaration
    [EntityDescription("Indicates query stats should be logged (Default) by this user. Can be turned off for migration users, or large import users for performance of complex calculations.")]
    [EntityProperty(SQLType.Bit, false, "1")]
    [HardCodedDefaultValueOnNew("1")]
    bool LogQueryStats { get; set; }
    Property Value
    Type Description
    bool

    Name

    The unique user friendly name of this user

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, false)]
    [EntityDescription("The unique user friendly name of this user")]
    [Required]
    string Name { get; set; }
    Property Value
    Type Description
    string

    NotificationEmailOverride

    By default email notifications will use the users EmailLogin. This can override that with another email address instead.

    Declaration
    [EntityDescription("By default email notifications will use the users EmailLogin. This can override that with another email address instead.")]
    [EntityProperty(SQLType.NVarChar, 500, true)]
    string NotificationEmailOverride { get; set; }
    Property Value
    Type Description
    string

    PromoteOnlyWithTeamID

    Links to ITeam. Indicates the team permissions to use only when promoting items from a canvas - not necessarily a team the user has access to otherwise

    Declaration
    [EntityDescription("Indicates the team permissions to use *only* when promoting items from a canvas - not necessarily a team the user has access to otherwise.")]
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.Teams, "ID", SingleJoinType.ZeroToOne, "Promote Only With Team", "Users Promotion Teams", LinkToItemInSet = false, PreventAutoConstraint = true)]
    Guid? PromoteOnlyWithTeamID { get; set; }
    Property Value
    Type Description
    Guid?

    RunInCanvasID

    Links to ICanvas. Indicates the user is currently running exclusively within the specified canvas

    Declaration
    [EntityDescription("Indicates the user is currently running exclusively within the specified canvas")]
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.Canvas, "ID", SingleJoinType.ZeroToOne, "Running In Canvas", "Canvases In Use By User", LinkToItemInSet = false)]
    Guid? RunInCanvasID { get; set; }
    Property Value
    Type Description
    Guid?

    RunInSafeID

    Links to ISafe. Indicates the user is currently running within the specified safe, meaning any created items by the user automatically belong in that safe

    Declaration
    [EntityDescription("Indicates the user is currently running within the specified safe, meaning any created items by the user automatically belong in that safe")]
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityRelationship(EntityID.Safe, "ID", SingleJoinType.ZeroToOne, "Running In Safe", "Safes In Use By User", LinkToItemInSet = false)]
    [UserSafeValid]
    Guid? RunInSafeID { get; set; }
    Property Value
    Type Description
    Guid?

    SessionID

    The unique session id this user is currently running under from their login

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [IgnoreOnClone]
    Guid? SessionID { get; set; }
    Property Value
    Type Description
    Guid?

    SessionStart

    The date/time the session started, so it can automatically be invalidated after a period of time

    Declaration
    [EntityProperty(SQLType.DateTimeOffset, true)]
    [IgnoreOnClone]
    DateTimeOffset? SessionStart { get; set; }
    Property Value
    Type Description
    DateTimeOffset?

    Suspended

    Indicates this user is suspended.

    If they are suspended the user will not be able to login, but any attempts are still audited.

    Declaration
    [EntityDescription("Indicates this user is suspended. If they are suspended the user will not be able to login, but any attempts are still audited.")]
    [EntityProperty(SQLType.Bit, false, "0")]
    bool Suspended { get; set; }
    Property Value
    Type Description
    bool

    UITheme

    The default theme for the user client application

    Declaration
    [EntityDescription("The default theme for the user client application")]
    [EntityProperty(SQLType.SmallInt, false, "24")]
    [HardCodedDefaultValueOnNew("24")]
    Theme UITheme { get; set; }
    Property Value
    Type Description
    Theme

    ValidFrom

    The date/time this users login is valid from. If set they will not be able to login until this date/time has passed.

    Declaration
    [EntityDescription("The date/time this users login is valid from. If set they will not be able to login until this date/time has passed. ")]
    [EntityProperty(SQLType.DateTimeOffset, true)]
    [IgnoreOnClone]
    DateTimeOffset? ValidFrom { get; set; }
    Property Value
    Type Description
    DateTimeOffset?

    ValidTo

    The date/time this users login is valid to. If set they will not be able to login after this date/time.

    Declaration
    [EntityDescription("The date/time this users login is valid to. If set they will not be able to login after this date/time. ")]
    [EntityProperty(SQLType.DateTimeOffset, true)]
    [IgnoreOnClone]
    DateTimeOffset? ValidTo { get; set; }
    Property Value
    Type Description
    DateTimeOffset?

    WindowsLoginDomain

    The users windows login domain and user for logging in using windows credentials

    Declaration
    [EntityDescription("The users windows login domain and user for logging in using windows credentials.")]
    [EntityProperty(SQLType.NVarChar, 500, true)]
    string WindowsLoginDomain { get; set; }
    Property Value
    Type Description
    string

    WindowsLoginOnly

    Indicates if users can only login using their windows crednetials or not.

    Declaration
    [EntityDescription("Indicates if users can only login using their windows crednetials or not.")]
    [EntityProperty(SQLType.Bit, false, "0")]
    bool WindowsLoginOnly { get; set; }
    Property Value
    Type Description
    bool

    Extension Methods

    UserExtensions.ToUserInfo(IUser)
    LinqExtensions.AsArray<T>(T)
    LinqExtensions.ToArrayOfOne<T>(T)
    LinqExtensions.ToListOfOne<T>(T)
    MiscExtensions.SetIfNotEqual<T, TP>(T, Expression<Func<T, TP>>, TP)
    WeakReferenceExtensions.WeakReference(object)
    SQLExtensions.ToSQLValue(object, bool)
    ReflectionExtensions.ClearEventInvocations(object, string)
    StringExtensions.ToCSVFormatString(object, Type)

    See Also

    IRole
    ITeam
    In this article
    Back to top © LemonEdge Technologies. All rights reserved.