tripwire-server 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +27 -7
- data/lib/tripwire/server/client.rb +75 -23
- data/lib/tripwire/server/gate_delivery.rb +27 -2
- data/lib/tripwire/server/version.rb +1 -1
- data/spec/README.md +4 -4
- data/spec/fixtures/api/gate/service-create.json +2 -2
- data/spec/fixtures/api/gate/service-detail.json +2 -2
- data/spec/fixtures/api/gate/service-disable.json +2 -2
- data/spec/fixtures/api/gate/service-update.json +2 -2
- data/spec/fixtures/api/gate/services-list.json +2 -2
- data/spec/fixtures/api/organizations/api-key-create.json +27 -0
- data/spec/fixtures/api/{teams → organizations}/api-key-list.json +10 -5
- data/spec/fixtures/api/{teams → organizations}/api-key-revoke.json +10 -5
- data/spec/fixtures/api/organizations/api-key-rotate.json +27 -0
- data/spec/fixtures/api/organizations/api-key-update.json +29 -0
- data/spec/fixtures/api/{teams/team-create.json → organizations/organization-create.json} +4 -4
- data/spec/fixtures/api/{teams/team-update.json → organizations/organization-update.json} +4 -4
- data/spec/fixtures/api/{teams/team.json → organizations/organization.json} +4 -4
- data/spec/fixtures/api/sessions/detail.json +45 -35
- data/spec/fixtures/gate-delivery/approved-webhook-payload.valid.json +0 -1
- data/spec/fixtures/gate-delivery/webhook-signature.json +3 -3
- data/spec/fixtures/manifest.json +20 -14
- data/spec/openapi.json +12099 -5351
- metadata +11 -10
- data/spec/fixtures/api/teams/api-key-create.json +0 -21
- data/spec/fixtures/api/teams/api-key-rotate.json +0 -21
|
@@ -79,46 +79,47 @@
|
|
|
79
79
|
]
|
|
80
80
|
}
|
|
81
81
|
],
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
"product": "playwright",
|
|
87
|
-
"framework": "playwright",
|
|
88
|
-
"concealment_style": "stealth",
|
|
89
|
-
"organization": "Browserless",
|
|
90
|
-
"facets": {
|
|
91
|
-
"category": {
|
|
82
|
+
"attribution": {
|
|
83
|
+
"labels": [
|
|
84
|
+
{
|
|
85
|
+
"kind": "actor",
|
|
92
86
|
"value": "automation",
|
|
93
|
-
"
|
|
94
|
-
"
|
|
87
|
+
"label": "Automation",
|
|
88
|
+
"confidence": 97
|
|
95
89
|
},
|
|
96
|
-
|
|
90
|
+
{
|
|
91
|
+
"kind": "provider",
|
|
97
92
|
"value": "browserless",
|
|
98
|
-
"
|
|
99
|
-
"
|
|
93
|
+
"label": "Browserless",
|
|
94
|
+
"confidence": 92
|
|
100
95
|
},
|
|
101
|
-
|
|
96
|
+
{
|
|
97
|
+
"kind": "tool",
|
|
102
98
|
"value": "playwright",
|
|
103
|
-
"
|
|
104
|
-
"
|
|
99
|
+
"label": "Playwright",
|
|
100
|
+
"confidence": 89
|
|
105
101
|
},
|
|
106
|
-
|
|
107
|
-
"
|
|
108
|
-
"confidence": 0.89,
|
|
109
|
-
"relation": "is"
|
|
110
|
-
},
|
|
111
|
-
"concealment_style": {
|
|
102
|
+
{
|
|
103
|
+
"kind": "evasion",
|
|
112
104
|
"value": "stealth",
|
|
113
|
-
"
|
|
114
|
-
"
|
|
105
|
+
"label": "Stealth",
|
|
106
|
+
"confidence": 73
|
|
115
107
|
},
|
|
116
|
-
|
|
108
|
+
{
|
|
109
|
+
"kind": "organization",
|
|
117
110
|
"value": "Browserless",
|
|
118
|
-
"
|
|
119
|
-
"
|
|
111
|
+
"label": "Browserless",
|
|
112
|
+
"confidence": 68
|
|
120
113
|
}
|
|
121
|
-
|
|
114
|
+
],
|
|
115
|
+
"behaviors": [
|
|
116
|
+
{
|
|
117
|
+
"channel": "typing",
|
|
118
|
+
"value": "synthetic-typing",
|
|
119
|
+
"label": "Synthetic Typing",
|
|
120
|
+
"confidence": 86
|
|
121
|
+
}
|
|
122
|
+
]
|
|
122
123
|
},
|
|
123
124
|
"web_bot_auth": {
|
|
124
125
|
"status": "verified",
|
|
@@ -176,12 +177,21 @@
|
|
|
176
177
|
"evaluated_at": "2026-03-24T20:00:05.000Z"
|
|
177
178
|
},
|
|
178
179
|
"runtime_integrity": {
|
|
179
|
-
"
|
|
180
|
-
"
|
|
181
|
-
"
|
|
182
|
-
"
|
|
183
|
-
"
|
|
180
|
+
"tampering": "high_risk",
|
|
181
|
+
"developer_tools": "high_risk",
|
|
182
|
+
"emulation": "clean",
|
|
183
|
+
"virtualization": "high_risk",
|
|
184
|
+
"privacy_hardening": "notice",
|
|
185
|
+
"identity_spoofing": "clean",
|
|
186
|
+
"replay": "clean",
|
|
187
|
+
"outdated_environment": "clean"
|
|
184
188
|
},
|
|
189
|
+
"native_runtime_integrity": null,
|
|
190
|
+
"native_app": null,
|
|
191
|
+
"native_carrier": null,
|
|
192
|
+
"native_motion_print": null,
|
|
193
|
+
"device_identity": null,
|
|
194
|
+
"install_id": null,
|
|
185
195
|
"visitor_fingerprint": {
|
|
186
196
|
"object": "visitor_fingerprint",
|
|
187
197
|
"id": "vid_456789abcdefghjkmnpqrstvwx",
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"timestamp": "1735776000",
|
|
4
4
|
"expired_timestamp": "1735775400",
|
|
5
5
|
"now_seconds": 1735776000,
|
|
6
|
-
"raw_body": "{\"
|
|
7
|
-
"signature": "
|
|
8
|
-
"invalid_signature": "
|
|
6
|
+
"raw_body": "{\"id\":\"wevt_0123456789abcdef0123456789abcdef\",\"object\":\"webhook_event\",\"type\":\"gate.session.approved\",\"created\":\"2026-01-02T00:00:00.000Z\",\"data\":{\"service_id\":\"tripwire\",\"gate_session_id\":\"gate_0123456789abcdefghjkmnpqrs\",\"gate_account_id\":\"gacct_0123456789abcdefghjkmnpqrs\",\"account_name\":\"Acme\",\"metadata\":{\"plan\":\"pro\"},\"tripwire\":{\"verdict\":\"human\",\"score\":0.12},\"delivery\":{\"version\":1,\"algorithm\":\"x25519-hkdf-sha256/aes-256-gcm\",\"key_id\":\"LyGqfpvB0SCaX4P0inVpMJTAjCNJVWq_3OE87it2ZYo\",\"public_key\":\"bn6szfMIS-7pLl01PqvssrrGRoW1SVTkUuqeg0hfrW0\"}}}",
|
|
7
|
+
"signature": "0057858d4e9c78cce5c72525a21fa3963c8f76cef2d864a31a2245fce4697ea1",
|
|
8
|
+
"invalid_signature": "1057858d4e9c78cce5c72525a21fa3963c8f76cef2d864a31a2245fce4697ea1"
|
|
9
9
|
}
|
data/spec/fixtures/manifest.json
CHANGED
|
@@ -49,47 +49,53 @@
|
|
|
49
49
|
"status": "200"
|
|
50
50
|
},
|
|
51
51
|
{
|
|
52
|
-
"file": "api/
|
|
53
|
-
"path": "/v1/
|
|
52
|
+
"file": "api/organizations/organization.json",
|
|
53
|
+
"path": "/v1/organizations/{organizationId}",
|
|
54
54
|
"method": "get",
|
|
55
55
|
"status": "200"
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
|
-
"file": "api/
|
|
59
|
-
"path": "/v1/
|
|
58
|
+
"file": "api/organizations/organization-create.json",
|
|
59
|
+
"path": "/v1/organizations",
|
|
60
60
|
"method": "post",
|
|
61
61
|
"status": "201"
|
|
62
62
|
},
|
|
63
63
|
{
|
|
64
|
-
"file": "api/
|
|
65
|
-
"path": "/v1/
|
|
64
|
+
"file": "api/organizations/organization-update.json",
|
|
65
|
+
"path": "/v1/organizations/{organizationId}",
|
|
66
66
|
"method": "patch",
|
|
67
67
|
"status": "200"
|
|
68
68
|
},
|
|
69
69
|
{
|
|
70
|
-
"file": "api/
|
|
71
|
-
"path": "/v1/
|
|
70
|
+
"file": "api/organizations/api-key-create.json",
|
|
71
|
+
"path": "/v1/organizations/{organizationId}/api-keys",
|
|
72
72
|
"method": "post",
|
|
73
73
|
"status": "201"
|
|
74
74
|
},
|
|
75
75
|
{
|
|
76
|
-
"file": "api/
|
|
77
|
-
"path": "/v1/
|
|
76
|
+
"file": "api/organizations/api-key-list.json",
|
|
77
|
+
"path": "/v1/organizations/{organizationId}/api-keys",
|
|
78
78
|
"method": "get",
|
|
79
79
|
"status": "200"
|
|
80
80
|
},
|
|
81
81
|
{
|
|
82
|
-
"file": "api/
|
|
83
|
-
"path": "/v1/
|
|
82
|
+
"file": "api/organizations/api-key-rotate.json",
|
|
83
|
+
"path": "/v1/organizations/{organizationId}/api-keys/{keyId}/rotations",
|
|
84
84
|
"method": "post",
|
|
85
85
|
"status": "201"
|
|
86
86
|
},
|
|
87
87
|
{
|
|
88
|
-
"file": "api/
|
|
89
|
-
"path": "/v1/
|
|
88
|
+
"file": "api/organizations/api-key-revoke.json",
|
|
89
|
+
"path": "/v1/organizations/{organizationId}/api-keys/{keyId}",
|
|
90
90
|
"method": "delete",
|
|
91
91
|
"status": "200"
|
|
92
92
|
},
|
|
93
|
+
{
|
|
94
|
+
"file": "api/organizations/api-key-update.json",
|
|
95
|
+
"path": "/v1/organizations/{organizationId}/api-keys/{keyId}",
|
|
96
|
+
"method": "patch",
|
|
97
|
+
"status": "200"
|
|
98
|
+
},
|
|
93
99
|
{
|
|
94
100
|
"file": "api/gate/registry-list.json",
|
|
95
101
|
"path": "/v1/gate/registry",
|