HasAccessMandatory: Boolean;
Свойство HasAccessMandatory возвращает признак использования мандатного контроля доступа для элементов справочника НСИ.
True. Для элементов справочника НСИ применяется мандатный контроль доступа. Для отключения мандатного контроля доступа используйте метод IAccessObjectSecurity.RevokeHasAccessMandatory;
False. Мандатный контроль доступа не используется для элементов справочника НСИ.
Значение свойства соответствует значению IRdsDictionary.HasMandatoryAccess.
Признак того, применяется ли дискреционный контроль доступа к элементам справочника НСИ, определяет свойство ISecurityDescriptor.AccessSecured.
Для выполнения примера необходимо наличие справочника НСИ с идентификатором «RDS_DICT». Для пользователя, выполняющего пример, должна быть выдана привилегия «Изменение метки безопасности и списка контроля доступа любого объекта».
Добавьте ссылку на системную сборку Metabase.
Sub UserProc;
Var
MB: IMetabase;
MDesc: IMetabaseObjectDescriptor;
SD: ISecurityDescriptor;
AOS: IAccessObjectSecurity;
Begin
MB := MetabaseClass.Active;
MDesc := MB.ItemById("RDS_DICT");
SD := MDesc.SecurityDescriptor;
If SD.HasAccessMandatory Then
AOS := MDesc.GetSecurity;
AOS.RevokeHasAccessMandatory;
End If;
End Sub UserProc;
При выполнении примера для справочника НСИ будет отключен мандатный контроль доступа для элементов, если ранее он был включен.
См. также: