Grecos Workspace
Navigation remains inside site context. Existing modules are embedded as workspace sections, not unrelated global jumps.
Secrets & Credentials Vault
Placeholder vault contract for deployment adapters. No real credentials are stored. No plaintext is displayed after creation.
10 types
No plaintext returned after creation
Adapters resolve only during deployment execution
Credential placeholders
| Label | Type | Provider | Status | Vault reference | Actions |
|---|---|---|---|---|---|
| Grecos DirectAdmin API placeholder | directadmin_api | directadmin | active | vault://nubflow/org_nubdesigns/ws_grecos/site_grecos/directadmin/sec_grecos_directadmin_placeholder_001 | Add placeholder Rotate placeholder Revoke placeholder |
| Grecos SFTP publishing placeholder | sftp | sftp | active | vault://nubflow/org_nubdesigns/ws_grecos/site_grecos/sftp/sec_grecos_sftp_placeholder_001 | Add placeholder Rotate placeholder Revoke placeholder |
| Future Cloudflare DNS placeholder | cloudflare_api | cloudflare | revoked | vault://nubflow/org_nubdesigns/ws_grecos/site_grecos/cloudflare/sec_grecos_cloudflare_placeholder_001 | Add placeholder Rotate placeholder Revoke placeholder |
Usage view
| Target | Adapter | Credential ref | Policy |
|---|---|---|---|
| env_grecos_prod | directadmin | vault://nubflow/org_nubdesigns/ws_grecos/site_grecos/directadmin/sec_grecos_directadmin_placeholder_001 | resolve only inside deployment worker; never returned to UI |
| env_grecos_prod | sftp | vault://nubflow/org_nubdesigns/ws_grecos/site_grecos/sftp/sec_grecos_sftp_placeholder_001 | resolve only inside deployment worker; never returned to UI |
API and audit contract
metadata list; encrypted_payload is masked; plaintext never returned
secret metadata and vault reference only after creation
new secret_version and same credentials_reference unless target ref is changed
status=revoked; runtime resolution denied
deployment targets/adapters referencing credentials_reference
Audit events: secret_created · secret_rotated · secret_revoked · secret_used_by_deployment · secret_access_denied