Class SecurityLogin
- Namespace
- ArcanaDevelopment.adTempus.Client
- Assembly
- ArcanaDevelopment.adTempus.Client.dll
A security login represents a user authorized to log in to adTempus
public sealed class SecurityLogin : SecurityEntity
- Inheritance
-
objectSecurityLogin
Remarks
A login generally represents an individual user, but it can be a "template" login used to automatically create new logins for users based on Windows security group membership.
Individual Users
Users can be authenticated using either integrated (automatic) Windows authentication, or adTempus-based authentication with a user ID and password. Both models can be used in the same adTempus instance.
Windows Authentication
To use Windows authentication to automatically authenticate users, set the LoginType to WindowsUser. Set the WindowsSid to the SID of the user's Windows account (ResolveSecurityNames(string[]) or ResolveSecurityName(string) can be used to look up security accounts on the Windows server). The Name should be set to the user's user ID (including domain) but this is for display purposes only--adTempus uses the SID for identification and authentication.
No password is set when using Windows authentication
adTempus Authentication
For adTempus authentication, the user ID and password are defined in adTempus and authentication is not managed by Windows. To use adTempus authentication set the LoginType to adTempusUser. Set the Name to the name (user ID) the user will use to log in, and set a password for the user.
Template Logins
To create a template login set the LoginType to WindowsGroup and set the WindowsSid to the SID of the Windows security group that will be used to perform authentication. When a user tries to connect to adTempus for the first time, adTempus checks to see if they belong to the specified Windows group. If so a new SecurityLogin is created automatically for the user with the LoginType set to LoginType.WindowsGroupMember. All permissions and role memberships from the template login are copied to the new login for the user.
Properties
ClassID
The Class ID for the object
[IgnoreDataMember]
public override ClassID ClassID { get; }
Property Value
ClassKeyName
The key name for the class.
public override string ClassKeyName { get; }
Property Value
- string
Remarks
This name the name used by adTempus to identify the class and is intended for programmatic use only. Use the ClassName for a user-friendly name.
Enabled
Indicates whether this login is enabled.
public bool Enabled { get; set; }
Property Value
- bool
Remarks
If Enabled is False, the user will not be able to log in to adTempus.
IsDependent
Indicates whether the object is a dependent of (owned by) another object
[IgnoreDataMember]
public override bool IsDependent { get; }
Property Value
- bool
Remarks
An independent object (IsDependent is false) is an object that can exist on its own without being part of another object. For example, Jobs, Job Groups, etc.
A dependent object (IsDependent is true) is a part of another object. For example, a JobStep cannot exist independently of a Job, so the JobStep is dependent.
Dependent objects cannot be directly fetched from the server: they are only fetched as part of the object they belong to. They also cannot be saved or deleted independently: they are automatically saved or deleted when the owning object is saved or deleted.
LoginType
Specifies the type of login.
public LoginType LoginType { get; set; }
Property Value
Name
The name of the entity
public override string Name { get; set; }
Property Value
- string
Remarks
This is the user ID that the user uses to log in. See the Remarks for the SecurityLogin class for more information.
PasswordSet
Indicates whether a password has been set for this account.
public bool PasswordSet { get; }
Property Value
- bool
- See Also
WindowsSid
The SID of the Windows identity that this login represents.
public string WindowsSid { get; set; }
Property Value
- string
Remarks
This value is required if the LoginType is LoginType.WindowsUser or LoginType.WindowsGroup. See the Remarks for the SecurityLogin class for more information.
Methods
GetObjectDescription()
Gets a description of the object's key settings.
protected override string GetObjectDescription()
Returns
- string
Remarks
This method is called by GetDescription() to get a user-friendly description of the object (such as its key settings) for display to the user. The description should contain enough information to distinguish this object from others of the same class.
SetPassword(string)
Sets the password for an adTempus login.
public void SetPassword(string newPassword)
Parameters
| Name | Type | Description |
|---|---|---|
newPassword |
string | The new password value |
Remarks
A password is only specified if LoginType is LoginType.adTempusUser.
Passwords are write-only and cannot be read from the server.
- See Also
SetTypeFromNameUse(SIDNameUse)
Sets the LoginType based on a SIDNameUseValue
public bool SetTypeFromNameUse(SIDNameUse source)
Parameters
| Name | Type | Description |
|---|---|---|
source |
SIDNameUse | The SID name use |
Returns
Remarks
This method is used to set the LoginType when creating a new login, after resolving a Windows account name to a SID.
WriteToConfigurationReport(IADTObjectConfigurationReportWriter)
Writes the object and any contained objects to a configuration report
public override void WriteToConfigurationReport(IADTObjectConfigurationReportWriter reportBuilder)
Parameters
| Name | Type | Description |
|---|---|---|
reportBuilder |
IADTObjectConfigurationReportWriter | The report builder to write the object to. |
Inherited Members
- SecurityEntity.IsSystem
- SecurityEntity.Roles
- SecurityEntity.GetPermissions()
- ADTIndependentObject.Refresh()
- ADTIndependentObject.Revert()
- ADTIndependentObject.Save()
- ADTIndependentObject.Save(out MessageCollection)
- ADTIndependentObject.SaveWithAuditOrSnapshot(ChangeLogParameters)
- ADTIndependentObject.SaveWithAuditOrSnapshot(ChangeLogParameters, out MessageCollection)
- ADTIndependentObject.Delete()
- ADTIndependentObject.DeleteWithAuditOrSnapshot(ChangeLogParameters)
- ADTIndependentObject.GetSecurityDescriptor()
- ADTIndependentObject.ReplaceObjectReferences(string[], bool, int, IEnumerable<OID>, ADTObject, bool, ChangeLogParameters)
- ADTIndependentObject.GetObjectReferences(string[], bool, int)
- ADTIndependentObject.GetObjectReferences(string[], bool, int, OID[])
- ADTObject.LastModified
- ADTObject.CreationTimestamp
- ADTObject.FromController
- ADTObject.CustomProperties
- ADTObject.Description
- ADTObject.DescriptionTextType
- ADTObject.OID
- ADTObject.BindingDescription
- ADTObject.ToString()
- ADTObject.ParentObject
- ADTObject.CanPerform(SecurityPermission)
- ADTObject.Duplicate()
- ADTObject.DataContext
- ADTObject.AccessMask
- ADTObject.Validate(MessageCollection)
- ADTObject.SupportedSecurityActions
- ADTObject.SupportedSecurityInheritanceOptions
- ADTObject.GetTopLevelOwner()
- ADTObject.GetConfigurationReport()
- ADTObject.GetConfigurationReport(bool)
- ADTObject.IsReadOnly
- ObjectBase.IsDirty
- ObjectBase.IsNew
- ObjectBase.IsStub
- ObjectBase.ClassName
- ObjectBase.GetDescriptionWithClassName()
- ObjectBase.GetDescription()
- ObjectBase.BeginEdit()
- ObjectBase.BeginEdit(UndoLevelAction)
- ObjectBase.CommitEdit(Guid)
- ObjectBase.CommitEdit()
- ObjectBase.UndoEdit()
- ObjectBase.UndoEdit(Guid)