-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathauthorization-proof.json
More file actions
70 lines (70 loc) · 1.77 KB
/
authorization-proof.json
File metadata and controls
70 lines (70 loc) · 1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{
"version": "0.2",
"identity_profiles": [
{
"id": "ci-deployer",
"provider": "none",
"subject": {
"kind": "service",
"principal": "agent://ci.example.com/deployer",
"display_name": "CI Deploy Agent"
},
"trust": { "level": "supervised" }
}
],
"authorization_proof_profiles": [
{
"id": "ci-jwt",
"method": "jwt",
"issuer": "https://ci.example.com",
"jwks_uri": "https://ci.example.com/.well-known/jwks.json",
"proof": {
"value_from": { "env": "CI_DEPLOY_TOKEN" }
},
"claims": {
"audience": "agentcli",
"subject": "deploy-pipeline"
},
"verify": { "required": true }
}
],
"evidence_profiles": [
{
"id": "ssh-evidence",
"provider": "ssh",
"payload": {
"bind": ["execution_id", "declared_identity", "authorization_proof", "command", "result"],
"format": "canonical-json"
},
"verify": { "required": false }
}
],
"workflows": [
{
"id": "ci-deploy",
"name": "CI Deployment Pipeline",
"identity": { "ref": "ci-deployer" },
"authorization_proof": { "ref": "ci-jwt" },
"contract": {
"sandbox": "permissive",
"allowed_paths": ["/opt/deploy", "/tmp"],
"audit": "always",
"required_trust_level": "supervised",
"trust_enforcement": "strict"
},
"tasks": [
{
"id": "deploy-app",
"name": "Deploy Application",
"shell": {
"program": "echo",
"args": ["deploying application"]
},
"target": { "session_target": "shell" },
"evidence": { "ref": "ssh-evidence" },
"schedule": { "cron": "0 * * * *" }
}
]
}
]
}