IMetabaseObjectDescriptor.SecurityDescriptor

Syntax

SecurityDescriptor: ISecurityDescriptor;

Description

The SecurityDescriptor property returns the control parameters of access to the current object.

Example

Executing the example requires that the repository contains an object with the OBJECT identifier. The USER user is created in the security manager.

Add a link to the Metabase system assembly.

Sub UserProc;
Var
    MB: IMetabase;
    ObjDesc: IMetabaseObjectDescriptor;
    SecDesc: ISecurityDescriptor;
    AcessCL: IAccessControlList;
    Subject: ISecuritySubject;
    Lic: Object;
Begin
    MB := MetabaseClass.Active;
    // Get license to be able to work with the security manager
    Lic := MB.RequestLicense(UiLicenseFeatureType.Adm);
    // Get object
    ObjDesc := MB.ItemById("OBJECT");
    SecDesc := ObjDesc.SecurityDescriptor;
    Subject := MB.Security.ResolveName("USER");
    SecDesc.Edit;
    // Allow full access of user to object
    AcessCL := SecDesc.Acl;
    AcessCL.AddAce(AceType.AccessAllowed, Subject.Sid, MetabaseObjectPredefinedRights.All);
    SecDesc.Apply(True);
    // Check in license
    Lic := Null;
End Sub UserProc;

After executing the example the user is added to the specified object. The user is allowed full access in advanced security parameters.

See also:

IMetabaseObjectDescriptor