Table of Contents

Class SecurityTemplate

Namespace
ArcanaDevelopment.adTempus.Client
Assembly
ArcanaDevelopment.adTempus.Client.dll

A SecurityTemplate is used to define permissions to classes of objects

public sealed class SecurityTemplate : ADTIndependentObject
Inheritance
object
SecurityTemplate

Remarks

Security Templates are define the "folder-level" permissions for the following object types:

  • Queues
  • Shared Scripts
  • Shared Schedules and Holiday Sets
  • Notification Recipients
  • Messaging Service Providers
  • Credential Profiles
  • Remote Agents

Additionally there is a Root security template from which all other templates and objects inherit permissions.

All other Security Templates inherit their permissions from the Root template and are in turn inherited by all objects of the type they represent. For example in the adTempus Console all Shared Scripts are grouped in a single node (or folder). When you right-click this folder and select the Security command, you are setting security that applies to all Shared Scripts; you are editing the SecurityTemplate for Shared Scripts.

The Security Templates are predefined (you cannot create them). There is no method to fetch all security templates; you can fetch them individually using GetObject(OID) and the WellKnownOIDs.SecurityTemplates values.

Properties

ClassID

The Class ID for the object

[IgnoreDataMember]
public override ClassID ClassID { get; }

Property Value

ClassID

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.

Description

Description of the template

public string Description { get; }

Property Value

string

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.

Name

The name of the template

public string Name { get; }

Property Value

string

SupportedSecurityActions

List of security actions supported by this object.

public override Dictionary<int, string> SupportedSecurityActions { get; }

Property Value

Dictionary<int, string>

A dictionary of the supported actions. The key is one of the SecurityPermission values and the value is the name of the permission (from GetSecurityPermissionName(SecurityPermission, string); a given SecurityPermission may use different names in different contexts).

SupportedSecurityInheritanceOptions

List of SecurityInheritanceOptions supported by the object

public override Dictionary<SecurityInheritanceOptions, string> SupportedSecurityInheritanceOptions { get; }

Property Value

Dictionary<SecurityInheritanceOptions, string>

Methods

FindOwningObject()

Get the owner of this object based on relationships.

protected override ADTObject FindOwningObject()

Returns

ADTObject

The owning object, or null if the object is not owned by another object or the owner has not been set.

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.

WriteToConfigurationReport(IADTObjectConfigurationReportWriter)

Writes the object and any contained objects to a configuration report

public override void WriteToConfigurationReport(IADTObjectConfigurationReportWriter reportBuilder)

Parameters

NameTypeDescription
reportBuilder IADTObjectConfigurationReportWriter

The report builder to write the object to.

Inherited Members