Pollcy.md
May 12, 2021 ยท View on GitHub
Policy File Format
"OpMode": 2,
"ExtEndpoints": [
{
"Ident": "Base1",
"Base": "localhost:3001",
"Proto": "HTTP",
"TLS": true,
"Profile": {
"Interval": 10,
},
"Timeout": 5,
},
{
"Ident": "Base2",
"Base": "localhost:3000",
"Proto": "HTTP",
"TLS": false,
"Profile": {
"Interval": 5,
},
"Timeout": 3,
}
],
"ExtComm": {
"As": "Base1",
"Contracts": {
"task":{
"Resource": "/task",
"Request": {
"Method": 1
}
},
"heartbeat":{
"Resource": "/heartbeat",
"Response": {
"Method": 2
}
},
"summary":{
"Resource": "/summary",
"Response": {
"Method": 2
}
},
"getlogs":{
"Resource": "/getlogs",
"Response": {
"Method": 2
}
}
}
},
// Keys
"Keys": {
// master key
"MasterKey": "$RNS$V1\$10000\$8LIbLgrCtk66pBiDKvYhwpFwvzpYKz6jWaUGh9kV89jIJwOL",
// site id
"SiteID": "2e1bb2f0-c20a-4eb6-baa4-18832af621c2"
},
// Authentication credentials to match hosts in any permutations
"AuthN": [
{
// Identifier used by hosts
"Ident": "Acct1",
// Type of authentication
// None:0,
// Local (no network logon, this host as logged in user) :1,
// NetworkImplicit (logged in user) :2
// NetworkExplicit (with supplied network creds) :3
"Type:": 1,
// Cred triple
"Domain": "NA.IT.COMPANY.COM",
"User": "user01",
// Password encoded by offline utility (KeyGen)
"Password": "cJ959sGLNGtjsM+uyGXhLlWPhZMbGJ1xWNwt4HDSHos="
},
{
"Ident": "Acct2",
"Domain": "NA.IT.COMPANY.COM",
"User": "user01",
"Password": "cJ959sGLNGtjsM+uyGXhLlWPhZMbGJ1xWNwt4HDSHos="
},
{
// Encrypting local files (scenario: dropper)
"Ident": "Local",
"Domain": "",
"User": "",
"Password": ""
}
],
// Hosts to connect to and work with files.
"Hosts":[
{
// Host logical identifier
"Ident": "HostA",
// IP or DNS
"Name": "10110-PC-X0874",
// Which AuthN identifier to use to connect with
"As": "Local",
// Encryption operation. None:0, Encrypt:1, Decrypt:2
// This is designed to granualry enc/dec destination files in simulations
"Operation": 1,
// Key to use to encrypt all files on host unless overriden by file Key
"Key": "f34febd0-2774-4829-96a6-aadbf5398ab3",
// Files on host to work with
"Files": [
{
// File Path.
// Can be in the formats:
// /path/to/file - this works well with JSON
// \\path\\to\\file - double backslash
// C:/path/to/file - this works for local files
// C:\\path\\to\\file - this works for local files
"FilePath": "/Users/user01/Downloads/Share/file5.log",
// Encryption operation. None:0, Encrypt:1, Decrypt:2
// 0: None will default to per-Host operation
"Operation": 2,
// Key to use to encrypt file at file level.
// Can override the host.
// To have host-level keys work, leave the value empty.
"Key": "9993c359-c58a-4c11-8cd0-f4c4695be28f"
},
{
"FilePath": "X:/file6.log",
"Operation": 1,
"Key": "88888359-c58a-4c11-8cd0-f4c4695be28f"
}
]
},
{
"Ident": "HostB",
"Name": "10110-PC-X0874",
"As": "Acct2",
"Operation": 0,
"Key": "7149e694-511c-4a89-b3b6-95372471f498",
"Files": [
{
"FilePath": "/Share/file1.log",
"Operation": 1,
"Key": ""
},
{
"FilePath": "\\Share\\file2.log",
"Operation": 1,
"Key": "6fd3c359-c58a-4c11-8cd0-f4c4695be28f"
},
{
"FilePath": "\\Share\\file4.log",
"Operation": 1,
"Key": "6fd3c359-c58a-4c11-8cd0-f4c4695be28f"
}
]
},
{
"Ident": "HostC",
"Name": "10110-PC-X0874",
"As": "Acct2",
"Operation": 1,
"Key": "f34febd0-2774-4829-96a6-aadbf5398ab3",
"Files": [
{
"FilePath": "/Users/user01/Downloads/Share/file3.log",
"Operation": 2,
"Key": ""
}
]
}
]
}