testdata: convert .json to .hujson with header comments
Rename all 594 test data files from .json to .hujson and add descriptive header comments to each file documenting what policy rules are under test and what outcome is expected. Update test loaders in all 5 _test.go files to parse HuJSON via hujson.Parse/Standardize/Pack before json.Unmarshal. Add cross-dependency warning to via_compat_test.go documenting that GRANT-V29/V30/V31/V36 are shared with TestGrantsCompat. Add .gitignore exemption for testdata HuJSON files.
This commit is contained in:
parent
f693cc0851
commit
30dce30a9d
600 changed files with 3493 additions and 18 deletions
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A1
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['autogroup:self'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A1",
|
||||
"policy_file": "ssh_policies/ssh_a1.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A2
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['autogroup:self'] users=['autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A2",
|
||||
"policy_file": "ssh_policies/ssh_a2.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A3
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['autogroup:self'] users=['root', 'autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A3",
|
||||
"policy_file": "ssh_policies/ssh_a3.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A4
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['ubuntu']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A4",
|
||||
"policy_file": "ssh_policies/ssh_a4.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A5
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['root', 'ubuntu']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A5",
|
||||
"policy_file": "ssh_policies/ssh_a5.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A6
|
||||
//
|
||||
// SSH: check: src=['autogroup:member'] dst=['autogroup:self'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A6",
|
||||
"policy_file": "ssh_policies/ssh_a6.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A7
|
||||
//
|
||||
// SSH: check: src=['autogroup:member'] dst=['autogroup:self'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A7",
|
||||
"policy_file": "ssh_policies/ssh_a7.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-A8
|
||||
//
|
||||
// SSH: check: src=['autogroup:member'] dst=['autogroup:self'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-A8",
|
||||
"policy_file": "ssh_policies/ssh_a8.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-B1
|
||||
//
|
||||
// SSH: accept: src=['kristoffer@dalby.cc'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-B1",
|
||||
"policy_file": "ssh_policies/ssh_b1.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-B2
|
||||
//
|
||||
// SSH: accept: src=['group:developers'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-B2",
|
||||
"policy_file": "ssh_policies/ssh_b2.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-B3
|
||||
//
|
||||
// SSH: accept: src=['tag:prod'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-B3",
|
||||
"policy_file": "ssh_policies/ssh_b3.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-B5
|
||||
//
|
||||
// SSH: accept: src=['user:*@passkey'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-B5",
|
||||
"policy_file": "ssh_policies/ssh_b5.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-B6
|
||||
//
|
||||
// SSH: accept: src=['autogroup:tagged'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-B6",
|
||||
"policy_file": "ssh_policies/ssh_b6.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-C1
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['autogroup:self'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-C1",
|
||||
"policy_file": "ssh_policies/ssh_c1.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-C2
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-C2",
|
||||
"policy_file": "ssh_policies/ssh_c2.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-C3
|
||||
//
|
||||
// SSH: accept: src=['kristoffer@dalby.cc'] dst=['kristoffer@dalby.cc'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-C3",
|
||||
"policy_file": "ssh_policies/ssh_c3.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-C4
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server', 'tag:prod'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 2 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-C4",
|
||||
"policy_file": "ssh_policies/ssh_c4.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D10
|
||||
//
|
||||
// SSH: accept: src=['user:*@passkey'] dst=['tag:server'] users=['localpart:*@passkey']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D10",
|
||||
"policy_file": "ssh_policies/ssh_d10.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D11
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey', 'ubuntu']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D11",
|
||||
"policy_file": "ssh_policies/ssh_d11.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D12
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey', 'ubuntu']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D12",
|
||||
"policy_file": "ssh_policies/ssh_d12.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D2
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D2",
|
||||
"policy_file": "ssh_policies/ssh_d2.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D3
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey', 'root']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D3",
|
||||
"policy_file": "ssh_policies/ssh_d3.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D4
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey', 'autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D4",
|
||||
"policy_file": "ssh_policies/ssh_d4.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D5
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey', 'root', 'autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D5",
|
||||
"policy_file": "ssh_policies/ssh_d5.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D6
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey', 'autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D6",
|
||||
"policy_file": "ssh_policies/ssh_d6.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D7
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey', 'root', 'autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D7",
|
||||
"policy_file": "ssh_policies/ssh_d7.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D8
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['autogroup:self'] users=['localpart:*@passkey']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D8",
|
||||
"policy_file": "ssh_policies/ssh_d8.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-D9
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['autogroup:self'] users=['localpart:*@passkey', 'root']
|
||||
//
|
||||
// Expected: SSH rules on 3 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-D9",
|
||||
"policy_file": "ssh_policies/ssh_d9.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-E3
|
||||
//
|
||||
// SSH: (no SSH rules)
|
||||
//
|
||||
// Expected: No SSH rules
|
||||
{
|
||||
"test_id": "SSH-E3",
|
||||
"policy_file": "ssh_policies/ssh_e3.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-E4
|
||||
//
|
||||
// SSH: (no SSH rules)
|
||||
//
|
||||
// Expected: No SSH rules
|
||||
{
|
||||
"test_id": "SSH-E4",
|
||||
"policy_file": "ssh_policies/ssh_e4.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-E5
|
||||
//
|
||||
// SSH: accept: src=['tag:prod'] dst=['tag:server'] users=['localpart:*@passkey']
|
||||
//
|
||||
// Expected: SSH rules on 2 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-E5",
|
||||
"policy_file": "ssh_policies/ssh_e5.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-E6
|
||||
//
|
||||
// SSH: check: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-E6",
|
||||
"policy_file": "ssh_policies/ssh_e6.json",
|
||||
|
|
@ -1,3 +1,10 @@
|
|||
// SSH-F1
|
||||
//
|
||||
// SSH rules:
|
||||
// accept: src=['autogroup:member'] dst=['autogroup:self'] users=['root']
|
||||
// accept: src=['autogroup:member'] dst=['tag:server'] users=['autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-F1",
|
||||
"policy_file": "ssh_policies/ssh_f1.json",
|
||||
|
|
@ -1,3 +1,10 @@
|
|||
// SSH-F2
|
||||
//
|
||||
// SSH rules:
|
||||
// accept: src=['autogroup:member'] dst=['tag:server'] users=['root']
|
||||
// check: src=['autogroup:member'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-F2",
|
||||
"policy_file": "ssh_policies/ssh_f2.json",
|
||||
|
|
@ -1,3 +1,10 @@
|
|||
// SSH-F3
|
||||
//
|
||||
// SSH rules:
|
||||
// accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey']
|
||||
// accept: src=['autogroup:member'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-F3",
|
||||
"policy_file": "ssh_policies/ssh_f3.json",
|
||||
|
|
@ -1,3 +1,10 @@
|
|||
// SSH-F4
|
||||
//
|
||||
// SSH rules:
|
||||
// accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey']
|
||||
// accept: src=['autogroup:member'] dst=['tag:server'] users=['autogroup:nonroot']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-F4",
|
||||
"policy_file": "ssh_policies/ssh_f4.json",
|
||||
|
|
@ -1,3 +1,10 @@
|
|||
// SSH-F5
|
||||
//
|
||||
// SSH rules:
|
||||
// accept: src=['autogroup:member'] dst=['autogroup:self'] users=['localpart:*@passkey']
|
||||
// accept: src=['autogroup:member'] dst=['tag:server'] users=['localpart:*@passkey']
|
||||
//
|
||||
// Expected: SSH rules on 4 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-F5",
|
||||
"policy_file": "ssh_policies/ssh_f5.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-G1
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-G1",
|
||||
"policy_file": "ssh_policies/ssh_g1.json",
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
// SSH-G2
|
||||
//
|
||||
// SSH: accept: src=['autogroup:member'] dst=['tag:server'] users=['root']
|
||||
//
|
||||
// Expected: SSH rules on 1 of 5 nodes
|
||||
{
|
||||
"test_id": "SSH-G2",
|
||||
"policy_file": "ssh_policies/ssh_g2.json",
|
||||
Loading…
Add table
Add a link
Reference in a new issue