feat: add control panel
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
# Copy to /opt/casan-control-panel/oauth2-proxy.env on the host.
|
||||
# Values below are placeholders; do not commit real secrets.
|
||||
|
||||
OAUTH2_PROXY_PROVIDER=oidc
|
||||
OAUTH2_PROXY_OIDC_ISSUER_URL=https://idp.example.com/realms/casan
|
||||
OAUTH2_PROXY_CLIENT_ID=casan-control-panel
|
||||
OAUTH2_PROXY_CLIENT_SECRET=replace-with-secret
|
||||
OAUTH2_PROXY_COOKIE_SECRET=replace-with-32-byte-base64-secret
|
||||
OAUTH2_PROXY_COOKIE_SECURE=true
|
||||
OAUTH2_PROXY_EMAIL_DOMAINS=*
|
||||
OAUTH2_PROXY_SCOPE=openid email profile groups
|
||||
OAUTH2_PROXY_OIDC_GROUPS_CLAIM=groups
|
||||
OAUTH2_PROXY_REDIRECT_URL=https://control-panel.example.com/oauth2/callback
|
||||
|
||||
# Required so nginx can pass verified identity to the API.
|
||||
OAUTH2_PROXY_SET_XAUTHREQUEST=true
|
||||
OAUTH2_PROXY_PASS_ACCESS_TOKEN=false
|
||||
OAUTH2_PROXY_PASS_AUTHORIZATION_HEADER=false
|
||||
|
||||
# Recommended: restrict to groups that map through rbac-check.py map-claim:
|
||||
# casan-org-admin, casan-project-admin, casan-approver, casan-operator,
|
||||
# casan-viewer, casan-auditor.
|
||||
# OAUTH2_PROXY_ALLOWED_GROUPS=casan-org-admin,casan-project-admin,casan-approver,casan-operator,casan-viewer,casan-auditor
|
||||
@@ -50,11 +50,11 @@
|
||||
"level": 3,
|
||||
"package_names": ["casan-platform", "casan-control-panel"],
|
||||
"status": "preview",
|
||||
"summary": "Optional productization UI: Control Panel, Dashboard, Evidence/Attack/Run-History viewers, read-only Ask CASAN, Gitea webhook. Only the AgentOps dashboard exists today; the rest is structure-only.",
|
||||
"summary": "Optional productization UI: Control Panel, Dashboard, Evidence/Attack/Run-History viewers, read-only Ask CASAN, Gitea webhook. AgentOps dashboard and Plan-13 Control Panel Track 1/2/3 plus FinOps/SLO management, Command Center baseline, and local-prod TLS/OIDC smoke exist today; the rest is preview/planned.",
|
||||
"target_users": ["teams wanting UI/dashboard/visibility", "demo/training/productization"],
|
||||
"extends": "devkit",
|
||||
"implemented_components": ["agentops-dashboard (packages/casan-harness/scripts/bash/dashboard-server.py + dashboard-serve.sh)", "read-only Ops Console (packages/casan-control-panel — NestJS API + React UI, Plan-13 Track 1)"],
|
||||
"pending_components": ["management/settings writes (Plan-13 Track 2)", "RBAC + approval inbox (Plan-13 Track 3 / Plan-14)", "evidence-pack-viewer", "attack-battery-viewer", "gitea-webhook-integration", "read-only Ask CASAN (Plan-18 MVP-0)"],
|
||||
"implemented_components": ["agentops-dashboard (packages/casan-harness/scripts/bash/dashboard-server.py + dashboard-serve.sh)", "Ops Console monitoring + governed settings + approval inbox + kill-switch + FinOps/SLO + Command Center + local-prod TLS/OIDC smoke (packages/casan-control-panel — NestJS API + React UI, Plan-13 Track 1/2/3/4 local-prod + §8.6)"],
|
||||
"pending_components": ["managed production deploy with enterprise IdP/cert/host (Plan-13 Track 4 / Plan-07 T2)", "evidence-pack-viewer", "attack-battery-viewer", "gitea-webhook-integration", "read-only Ask CASAN (Plan-18 MVP-0)"],
|
||||
"includes": [
|
||||
"packages/casan-platform",
|
||||
"packages/casan-harness/scripts/bash/dashboard-server.py",
|
||||
|
||||
Reference in New Issue
Block a user