Security
All features listed on this page are currently Windows only.
security.json is an optional file included in the root of the action that defines restrictions that the BrazenAgent service places on the Action while it executes.
Here is a full example security.json:
{
"RestrictedToken": true,
"MaxCPU": 5,
"MaxBandwidth": 10000,
"MaxMemory": 1024,
"MaxProcessCount": 1,
"IOPriority": "VeryLowIoPriority",
"UILimitDesktop": true,
"UILimitDisplaySettings": true,
"UILimitExitWindows": true,
"UILimitGlobalAtoms": true,
"UILimitHandles": true,
"UILimitReadClipboard": true,
"UILimitSystemParameters": true,
"UILimitWriteClipboard": true
}You can use the Table of Contents on the right to navigate to a specific setting.
RestrictedToken
Type: bool
Example:
{
"RestrictedToken": true
}Modifies the access token of the process to disable most of its privileges. Be aware that the action will be severely restricted in what it can do. For more information, refer to Microsoft's documentation on Restricted Tokens
On a windows system, the SeChangeNotify privilege will remain functional. This allows the process to be notified of changes to files or directories.
MaxCPU
Type: Integer
Example:
{
"MaxCPU": 20
}Sets the maximum CPU Percentage that the Action is allowed to use.
MaxBandwidth
Type: Integer
Example:
{
"MaxBandwidth": 10000
}Sets the maximum bandwidth for outgoing network traffic in bytes/second.
MaxMemory
Future Feature
MaxProcessCount
Future Feature
IOPriority
Type: String
Example:
{
"IOPriority": "VeryLowIoPriority"
}Sets the priority of the process. Valid values are:
VeryLowIoPriority
LowIoPriority
DefaultIoPriority
HighIoPriority
CriticalIoPriority
UILimitDesktop
Type: bool
Example:
{
"UILimitDesktop": true
}Prevents the Action from creating or switching Desktops.
UILimitDisplaySettings
Type: bool
Example:
{
"UILimitDisplaySettings" : true
}Prevents the action from changing the display settings.
UILimitExitWindows
Type: bool
Example:
{
"UILimitExitWindows" : true
}Prevents the Action from shutting down Windows.
UILimitGlobalAtoms
Type: bool
Example:
{
"UILimitGlobalAtoms" : true
}Prevents the action from accessing global atoms. When this is used, the action has its own atom table.
See Microsoft's documentation for more information on Windows Atom Tables
UILimitHandles
Type: bool
Example:
{
"UILimitHandles" : true
}Prevents the Action from using USER handles owned by processes not associated with the same Action.
UILimitReadClipboard
Type: bool
Example:
{
"UILimitReadClipboard" : true
}Prevents the Action from reading the clipboard.
UILimitSystemParameters
Type: bool
Example:
{
"UILimitSystemParameters" : true
}Prevents the action from modifying system parameters.
Example system parameters include:
Accessibility parameters
Desktop parameters
Icon parameters
Input parameters
Menu parameters
Power parameters
Screen saver parameters
Time-out parameters
UI effect parameters
Window parameters
For a more detailed description, see Microsoft's documentation on System Parameters.
UILimitWriteClipboard
Type: bool
Example:
{
"UILimitWriteClipboard" : true
}Prevents the Action from writing to the clipboard.
Last updated