📄 sddl.pas
字号:
{******************************************************************}
{ }
{ Borland Delphi Runtime Library }
{ Security Descriptor Definition Language interface unit }
{ }
{ Portions created by Microsoft are }
{ Copyright (C) 1995-1999 Microsoft Corporation. }
{ All Rights Reserved. }
{ }
{ The original file is: sddl.h, released June 2000. }
{ The original Pascal code is: Sddl.pas, released December 2000 }
{ The initial developer of the Pascal code is Marcel van Brakel }
{ (brakelm@bart.nl). }
{ }
{ Portions created by Marcel van Brakel are }
{ Copyright (C) 1999 Marcel van Brakel. }
{ }
{ Obtained through: }
{ Joint Endeavour of Delphi Innovators (Project JEDI) }
{ }
{ You may retrieve the latest version of this file at the Project }
{ JEDI home page, located at http://delphi-jedi.org }
{ }
{ The contents of this file are used with permission, subject to }
{ the Mozilla Public License Version 1.1 (the "License"); you may }
{ not use this file except in compliance with the License. You may }
{ obtain a copy of the License at }
{ http://www.mozilla.org/MPL/MPL-1.1.html }
{ }
{ Software distributed under the License is distributed on an }
{ "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or }
{ implied. See the License for the specific language governing }
{ rights and limitations under the License. }
{ }
{******************************************************************}
unit Sddl;
{$WEAKPACKAGEUNIT}
{$HPPEMIT ''}
{$HPPEMIT '#include "sddl.h"'}
{$HPPEMIT ''}
{$I WINDEFINES.INC}
interface
uses
WinNT, WinType;
//
// SDDL Version information
//
const
SDDL_REVISION_1 = 1;
{$EXTERNALSYM SDDL_REVISION_1}
SDDL_REVISION = SDDL_REVISION_1;
{$EXTERNALSYM SDDL_REVISION}
//
// SDDL Component tags
//
SDDL_OWNER = 'O'; // Owner tag
{$EXTERNALSYM SDDL_OWNER}
SDDL_GROUP = 'G'; // Group tag
{$EXTERNALSYM SDDL_GROUP}
SDDL_DACL = 'D'; // DACL tag
{$EXTERNALSYM SDDL_DACL}
SDDL_SACL = 'S'; // SACL tag
{$EXTERNALSYM SDDL_SACL}
//
// SDDL Security descriptor controls
//
SDDL_PROTECTED = 'P'; // DACL or SACL Protected
{$EXTERNALSYM SDDL_PROTECTED}
SDDL_AUTO_INHERIT_REQ = 'AR'; // Auto inherit request
{$EXTERNALSYM SDDL_AUTO_INHERIT_REQ}
SDDL_AUTO_INHERITED = 'AI'; // DACL/SACL are auto inherited
{$EXTERNALSYM SDDL_AUTO_INHERITED}
//
// SDDL Ace types
//
SDDL_ACCESS_ALLOWED = 'A'; // Access allowed
{$EXTERNALSYM SDDL_ACCESS_ALLOWED}
SDDL_ACCESS_DENIED = 'D'; // Access denied
{$EXTERNALSYM SDDL_ACCESS_DENIED}
SDDL_OBJECT_ACCESS_ALLOWED = 'OA'; // Object access allowed
{$EXTERNALSYM SDDL_OBJECT_ACCESS_ALLOWED}
SDDL_OBJECT_ACCESS_DENIED = 'OD'; // Object access denied
{$EXTERNALSYM SDDL_OBJECT_ACCESS_DENIED}
SDDL_AUDIT = 'AU'; // Audit
{$EXTERNALSYM SDDL_AUDIT}
SDDL_ALARM = 'AL'; // Alarm
{$EXTERNALSYM SDDL_ALARM}
SDDL_OBJECT_AUDIT = 'OU'; // Object audit
{$EXTERNALSYM SDDL_OBJECT_AUDIT}
SDDL_OBJECT_ALARM = 'OL'; // Object alarm
{$EXTERNALSYM SDDL_OBJECT_ALARM}
//
// SDDL Ace flags
//
SDDL_CONTAINER_INHERIT = 'CI'; // Container inherit
{$EXTERNALSYM SDDL_CONTAINER_INHERIT}
SDDL_OBJECT_INHERIT = 'OI'; // Object inherit
{$EXTERNALSYM SDDL_OBJECT_INHERIT}
SDDL_NO_PROPAGATE = 'NP'; // Inherit no propagate
{$EXTERNALSYM SDDL_NO_PROPAGATE}
SDDL_INHERIT_ONLY = 'IO'; // Inherit only
{$EXTERNALSYM SDDL_INHERIT_ONLY}
SDDL_INHERITED = 'ID'; // Inherited
{$EXTERNALSYM SDDL_INHERITED}
SDDL_AUDIT_SUCCESS = 'SA'; // Audit success
{$EXTERNALSYM SDDL_AUDIT_SUCCESS}
SDDL_AUDIT_FAILURE = 'FA'; // Audit failure
{$EXTERNALSYM SDDL_AUDIT_FAILURE}
//
// SDDL Rights
//
SDDL_READ_PROPERTY = 'RP';
{$EXTERNALSYM SDDL_READ_PROPERTY}
SDDL_WRITE_PROPERTY = 'WP';
{$EXTERNALSYM SDDL_WRITE_PROPERTY}
SDDL_CREATE_CHILD = 'CC';
{$EXTERNALSYM SDDL_CREATE_CHILD}
SDDL_DELETE_CHILD = 'DC';
{$EXTERNALSYM SDDL_DELETE_CHILD}
SDDL_LIST_CHILDREN = 'LC';
{$EXTERNALSYM SDDL_LIST_CHILDREN}
SDDL_SELF_WRITE = 'SW';
{$EXTERNALSYM SDDL_SELF_WRITE}
SDDL_LIST_OBJECT = 'LO';
{$EXTERNALSYM SDDL_LIST_OBJECT}
SDDL_DELETE_TREE = 'DT';
{$EXTERNALSYM SDDL_DELETE_TREE}
SDDL_CONTROL_ACCESS = 'CR';
{$EXTERNALSYM SDDL_CONTROL_ACCESS}
SDDL_READ_CONTROL = 'RC';
{$EXTERNALSYM SDDL_READ_CONTROL}
SDDL_WRITE_DAC = 'WD';
{$EXTERNALSYM SDDL_WRITE_DAC}
SDDL_WRITE_OWNER = 'WO';
{$EXTERNALSYM SDDL_WRITE_OWNER}
SDDL_STANDARD_DELETE = 'SD';
{$EXTERNALSYM SDDL_STANDARD_DELETE}
SDDL_GENERIC_ALL = 'GA';
{$EXTERNALSYM SDDL_GENERIC_ALL}
SDDL_GENERIC_READ = 'GR';
{$EXTERNALSYM SDDL_GENERIC_READ}
SDDL_GENERIC_WRITE = 'GW';
{$EXTERNALSYM SDDL_GENERIC_WRITE}
SDDL_GENERIC_EXECUTE = 'GX';
{$EXTERNALSYM SDDL_GENERIC_EXECUTE}
SDDL_FILE_ALL = 'FA';
{$EXTERNALSYM SDDL_FILE_ALL}
SDDL_FILE_READ = 'FR';
{$EXTERNALSYM SDDL_FILE_READ}
SDDL_FILE_WRITE = 'FW';
{$EXTERNALSYM SDDL_FILE_WRITE}
SDDL_FILE_EXECUTE = 'FX';
{$EXTERNALSYM SDDL_FILE_EXECUTE}
SDDL_KEY_ALL = 'KA';
{$EXTERNALSYM SDDL_KEY_ALL}
SDDL_KEY_READ = 'KR';
{$EXTERNALSYM SDDL_KEY_READ}
SDDL_KEY_WRITE = 'KW';
{$EXTERNALSYM SDDL_KEY_WRITE}
SDDL_KEY_EXECUTE = 'KX';
{$EXTERNALSYM SDDL_KEY_EXECUTE}
//
// SDDL User aliases
//
SDDL_DOMAIN_ADMINISTRATORS = 'DA'; // Domain admins
{$EXTERNALSYM SDDL_DOMAIN_ADMINISTRATORS}
SDDL_DOMAIN_GUESTS = 'DG'; // Domain guests
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -