// security / ephemeral access

Security & Ephemeral Access Policy

This policy governs how Gradio Security LTD manages access to systems, data, and infrastructure. It defines our zero-standing-access model, ephemeral access provisioning, authentication requirements, credential management, audit logging, and data destruction procedures — aligned with UK GDPR, ISO 27001, and SOC 2 controls.

Effective: 28 August 2026·Next review: February 2027

// table of contents
1.  Purpose and scope2.  Access control principles3.  Zero standing access (ZSA) model4.  Ephemeral access provisioning5.  Authentication and identity6.  Authorisation and role-based access (RBAC)7.  Credential and secret management8.  Session management9.  Audit logging and monitoring10. Incident response and breach handling11. Data destruction and secure deletion12. Third-party and sub-processor access13. Client codebase access (audit engagements)14. Physical security15. Roles and responsibilities16. Compliance mapping17. Training and awareness18. Policy review and version history19. Contact us

1. Purpose and scope

This Security & Ephemeral Access Policy defines the technical and organisational measures Gradio Safety LTD implements to protect systems, data, and infrastructure from unauthorised access, modification, disclosure, or destruction. It applies to all employees, contractors, sub-processors, and temporary collaborators who interact with our systems or client data.

This policy covers:

  • All production, staging, and development environments
  • All cloud infrastructure (Vercel, Cloudflare) and associated admin consoles
  • All SaaS platforms (Google Workspace, GitHub, Notion, payment & banking platforms)
  • All client codebases, architecture diagrams, and security audit materials accessed during engagements
  • All authentication systems, SSH keys, API tokens, and service accounts
  • All endpoints (laptops, workstations) used to access company or client systems

2. Access control principles

Our access control framework is built on the following principles:

PrincipleDescriptionImplementation
Least privilegeUsers receive only the minimum access required to perform their role — no more, no lessRole-based access control (RBAC) with granular permissions; default deny
Zero standing accessNo permanent access to production systems. All elevated access is temporary and must be requestedEphemeral access with automatic expiry (see Section 3)
Need-to-knowAccess to data is granted only when there is a legitimate business needAccess requests require justification; reviewed by a second person
Separation of dutiesNo single person can complete a sensitive action without oversightApproval workflows for production changes, deploys, and data access
Deny by defaultAll access is denied unless explicitly grantedAllowlist-based access; no blanket permissions
AuditabilityEvery access event is logged and attributable to an individualImmutable audit logs with tamper detection (see Section 9)
Time-boundAll access has an expiry — no perpetual grantsAutomatic revocation after TTL; access must be re-requested

3. Zero standing access (ZSA) model

Gradio Safety LTD operates a zero standing access model. This means that no user — including administrators, engineers, and founders — has permanent, always-on access to production systems, client data, or sensitive infrastructure.

// zero standing access — core rules
→ No permanent SSH keys on production servers
→ No permanent admin access to cloud consoles
→ No permanent access to client codebases or data
→ All elevated access is requested, approved, granted, and automatically revoked
→ Access TTL (time-to-live) is capped at 8 hours for production, 4 hours for client data
→ Access can be extended only with a new request and approval

The ZSA model reduces the blast radius of compromised credentials, limits insider threat exposure, and ensures that every access event is intentional, logged, and auditable.

4. Ephemeral access provisioning

Ephemeral access is temporary, time-bound access to a system or resource that is automatically provisioned on request and automatically revoked when the time-to-live (TTL) expires.

4.1 Access request workflow

StepActionDetails
1. RequestUser submits an access request via the access management toolMust include: target resource, justification, duration needed, task description
2. ApprovalA second person (manager, peer, or on-call) approves or denies the requestNo self-approval. For production access, approval must come from a different team member
3. ProvisioningAccess is automatically provisioned with the requested TTLCredentials are issued dynamically — no static keys are used
4. UsageUser accesses the resource within the granted time windowAll actions are logged and attributed to the user
5. ExpiryAccess is automatically revoked when the TTL expiresNo manual revocation required. Credentials are destroyed
6. AuditThe access event is recorded in the audit logIncludes: who, what, when, justification, approver, duration, actions taken

4.2 TTL limits by resource type

Resource typeMaximum TTLApproval requiredNotes
Production infrastructure (Vercel, Cloudflare admin)8 hoursYes — second team memberAuto-revoke at TTL expiry; no renewal without new request
Client codebase (audit engagement)4 hoursYes — engagement managerAccess scoped to read-only unless explicitly approved
Client data (architecture diagrams, reports)4 hoursYes — engagement managerDownload disabled; view-only in most cases
Payment processor admin2 hoursYes — founder / finance leadRestricted to authorised personnel only; all actions logged by processor
GitHub admin (org settings, secrets)8 hoursYes — second team memberRead access to repos is persistent; admin access is ephemeral
Google Workspace admin8 hoursYes — second team memberUser management, security settings, audit log access
Notion admin8 hoursYes — second team memberWorkspace settings, integration management
Database / data store2 hoursYes — second team memberQuery-level logging enabled; results export blocked

5. Authentication and identity

All access to Gradio Safety LTD systems requires strong authentication. We enforce the following authentication standards:

5.1 Multi-factor authentication (MFA)

  • Required for: All systems — no exceptions
  • Methods accepted: TOTP authenticator apps (Google Authenticator, Authy, 1Password), hardware security keys (YubiKey, FIDO2)
  • Methods NOT accepted: SMS-based MFA (vulnerable to SIM-swapping)
  • Recovery: Backup codes stored in a sealed envelope; recovery process requires identity verification by a second team member
  • Enforcement: MFA is enforced at the identity provider level — no bypass possible

5.2 Single sign-on (SSO)

  • All SaaS platforms are accessed through a central identity provider (Google Workspace)
  • SSO is enforced — direct login with local passwords is disabled where supported
  • Provisioning and de-provisioning is managed centrally — access is revoked instantly when a user leaves

5.3 Password standards

  • Minimum 16 characters where passwords are used (e.g., local accounts that cannot use SSO)
  • Stored only in an approved password manager (1Password, Bitwarden) — never in browsers, notes, or plain text
  • No password reuse across systems
  • No shared passwords — every account has a unique credential

5.4 Device security

  • All laptops and workstations have full-disk encryption enabled (BitLocker on Windows, FileVault on macOS, LUKS on Linux)
  • Automatic screen lock after 5 minutes of inactivity
  • Disk encryption recovery keys stored in the approved password manager, not on the device
  • Endpoint detection and response (EDR) installed where applicable
  • Devices are automatically updated with security patches within 7 days of release
  • Lost or stolen devices are reported immediately and remotely wiped

6. Authorisation and role-based access (RBAC)

Access to systems and data is managed through role-based access control. Each role has a defined set of permissions, and users are assigned roles based on their job function.

RolePersistent accessEphemeral access (on request)Approval authority
Founder / DirectorEmail, calendar, Notion (read), GitHub (read)All systems (production, payment, admin)N/A (but actions are logged and reviewed quarterly)
Lead ArchitectEmail, GitHub (read/write own repos), Notion (read/write)Production, client codebases, client dataEngagement manager or founder
Security & Compliance LeadEmail, GitHub (read), Notion (read/write), audit logs (read)All systems for security investigationsFounder
DevOps & Infrastructure LeadEmail, GitHub (read/write), Vercel (read), Cloudflare (read)Production infrastructure (write), DNS, SSLFounder or Lead Architect
Data EngineerEmail, GitHub (read), Notion (read)Databases, data pipelines, analytics toolsLead Architect or DevOps Lead
Engagement ManagerEmail, Notion (read/write), payment portal (read)Payment processor admin, client systemsFounder
Contractor / Temporary collaboratorEmail (if issued), specific repo access (read)Scoped to engagement only; maximum TTL 4 hoursEngagement manager or Lead Architect

7. Credential and secret management

All credentials, secrets, API keys, and certificates are managed through approved tools and processes:

Credential typeStorageRotationNotes
User passwordsApproved password manager (1Password / Bitwarden)On suspicion of compromise or at least annuallyNever stored in browsers, notes, or plain text
API tokens (GitHub, Vercel, Cloudflare, etc.)Secrets manager (GitHub Secrets, Vercel env vars, Cloudflare secrets)Every 90 days or on personnel changesScoped to minimum permissions; no global tokens
SSH keysEphemeral — issued per session, destroyed on expiryPer session (no persistent SSH keys)No SSH keys on production servers; access via ephemeral certificates
Database credentialsSecrets manager — never in code or config filesEvery 90 daysConnection strings are injected at runtime, not committed
Payment processor API keysPayment processor dashboard (restricted keys)Every 90 days or on personnel changesRestricted keys only — no unrestricted keys
TLS/SSL certificatesCloudflare (managed) or Let's Encrypt (auto-renew)Automatic (90 days for Let's Encrypt, managed by Cloudflare)No manual certificate management
Client-provided credentialsApproved password manager, shared vault scoped to engagementReturned or destroyed at engagement endNever reused; access logged
// credential hygiene rules
→ No credentials in source code, ever — use secrets management
→ No credentials in Slack, email, chat, or tickets
→ No credentials in environment files committed to version control
→ .env files are in .gitignore — always
→ Compromised credentials are rotated immediately, no waiting for the next cycle

8. Session management

  • Session timeout: All sessions expire after 30 minutes of inactivity for admin systems; 8 hours maximum for persistent sessions (e.g., IDE)
  • Concurrent sessions: Limited to 2 concurrent sessions per user per system
  • Session revocation: Sessions can be revoked centrally via the identity provider — instant across all systems
  • IP restrictions: Admin access restricted to known IP ranges where supported
  • Geographic restrictions: Access from unexpected geographic locations triggers re-authentication
  • Token refresh: Refresh tokens expire after 24 hours; access tokens expire after 1 hour

9. Audit logging and monitoring

All access events and administrative actions are logged and monitored. Our logging framework includes:

Log categoryWhat is loggedRetentionReview frequency
Authentication logsLogin attempts, MFA challenges, SSO events, failed logins, lockouts12 monthsWeekly (automated alerts for anomalies)
Access grantsEphemeral access requests, approvals, grants, revocations24 monthsMonthly
Administrative actionsConfig changes, permission changes, user provisioning/deprovisioning24 monthsMonthly
Data accessAccess to client data, database queries, file downloads24 monthsMonthly + on engagement close
Deployment logsCode deploys, infrastructure changes, DNS changes12 monthsPer deployment
Security eventsFailed access attempts, privilege escalation, suspicious activity24 monthsReal-time alerts + weekly review

Logs are stored in append-only storage with tamper detection. Access to audit logs requires ephemeral elevated access and is itself logged. Logs are reviewed by the Security & Compliance Lead on a monthly basis and by the founder on a quarterly basis.

10. Incident response and breach handling

If a security incident or suspected breach occurs, the following response process is followed:

PhaseActionTimeframe
1. DetectionIncident identified via monitoring, alert, or user reportReal-time alerts; user reports within 1 hour
2. ContainmentRevoke all access for affected accounts; isolate affected systemsWithin 1 hour of detection
3. AssessmentDetermine scope: what data, systems, and users are affectedWithin 4 hours
4. NotificationNotify affected clients, the ICO (if personal data breach), and relevant authoritiesWithin 24 hours (ICO: within 72 hours per UK GDPR)
5. EradicationRemove the root cause: rotate all credentials, patch vulnerabilities, close access pathsWithin 24 hours
6. RecoveryRestore systems to normal operation; verify integrityWithin 48 hours
7. Post-incident reviewRoot cause analysis, lessons learned, policy updatesWithin 2 weeks

All security incidents are documented in an incident register and reviewed by the founder. Material incidents are reported to clients as required by our contracts and to the ICO as required by UK GDPR Article 33.

11. Data destruction and secure deletion

When data is no longer needed — at the end of an engagement, when a retention period expires, or when a client requests deletion — Gradio Safety LTD securely destroys the data using the following methods:

Data typeDestruction methodVerification
Client codebase accessRevoke all credentials, remove SSH keys, close GitHub collaborator accessConfirm no active sessions; verify access removed in GitHub settings
Client data (diagrams, reports, audit findings)Secure delete (shred / srm) from all storage locations; empty trash; clear backups after retention windowVerify files no longer exist in any storage; log destruction in engagement record
Client-provided credentialsRemove from password manager; confirm deletion with clientVerify no remaining copies in any vault or system
Ephemeral access credentialsAutomatic destruction on TTL expiry — credentials are cryptographically erasedVerified by access management tool; logged in audit trail
Local copies on laptops/workstationsSecure delete (shred / srm); full-disk wipe if device is decommissionedVerify with file recovery tool; log destruction
Cloud-stored data (Vercel, Cloudflare)Delete via admin console; verify deletion across all regions and backupsConfirm via API that resources are gone; check backup retention
Email and communication recordsPer retention policy; secure delete when retention period expiresVerify deletion in email system and backups
// destruction principles
→ No client data is retained beyond the engagement or retention period without explicit consent
→ All destruction events are logged with: what, when, who, method, verification
→ Backups containing destroyed data are purged within the backup retention window (max 30 days)
→ Clients receive a destruction confirmation at the end of every engagement

12. Third-party and sub-processor access

Sub-processors and third-party tools that interact with our systems or data are subject to the following controls:

  • Minimum access: Sub-processors receive only the access necessary to provide the agreed service
  • No standing access: Sub-processor access is scoped and time-bound where possible
  • DPA required: A Data Processing Agreement is signed before any sub-processor processes personal data on our behalf
  • Access review: Sub-processor access is reviewed quarterly and revoked when no longer needed
  • Incident notification: Sub-processors must notify us of security incidents within 24 hours
  • Audit rights: We reserve the right to audit sub-processor security controls (see Supplier Code of Conduct Section 12)

Current sub-processors and their access scope are listed in our Privacy Policy (Section 8: Sub-processors).

13. Client codebase access (audit engagements)

During security audits and architecture reviews, Gradio Safety LTD may need access to client codebases. The following controls apply:

  • NDA first: A non-disclosure agreement is signed before any codebase access is granted
  • Read-only by default: Access is read-only unless write access is explicitly required and approved
  • Ephemeral access: Codebase access is granted as ephemeral access with a 4-hour TTL
  • No cloning: Code is reviewed in the client's environment where possible; cloning is restricted and requires explicit approval
  • No downloads: Downloading source code to local machines is prohibited unless explicitly approved by the client
  • No forks: Client code is not forked, copied, or retained after the engagement
  • Access log: All codebase access is logged and shared with the client on request
  • Destruction: At engagement end, all access is revoked, all credentials are destroyed, and a destruction confirmation is issued
  • Post-engagement verification: We verify that no client code or data remains in any of our systems

14. Physical security

Gradio Safety LTD operates as a remote-first company. There is no central office that stores servers, client data, or sensitive equipment. Physical security controls include:

  • Device encryption: All laptops and workstations have full-disk encryption (see Section 5.4)
  • Screen privacy: Privacy screens required when working in public spaces
  • Locked devices: Devices must be locked when unattended — automatic lock after 5 minutes
  • Secure disposal: Decommissioned devices are wiped to NIST SP 800-88 standards before disposal or recycling
  • Lost/stolen: Lost or stolen devices are reported within 1 hour and remotely wiped
  • No sensitive data on paper: Client information is not printed or written on paper; if necessary, paper is shredded after use

15. Roles and responsibilities

RoleSecurity responsibility
Founder / DirectorUltimate accountability for security. Approves security policy. Oversees incident response. Reviews quarterly access reports.
Security & Compliance LeadDay-to-day security operations. Manages access requests, reviews audit logs, conducts security assessments, leads incident response, maintains this policy.
DevOps & Infrastructure LeadImplements technical security controls. Manages infrastructure access, secrets management, deployment security, and monitoring.
All staffFollow this policy. Use approved tools. Report security concerns immediately. Complete security training. Never share credentials.

16. Compliance mapping

This policy maps to the following regulatory frameworks and standards:

FrameworkRelevant controlsPolicy sections
UK GDPR / EU GDPRArticle 32 (security of processing), Article 28 (processor obligations), Article 33 (breach notification)Sections 2, 3, 4, 7, 9, 10, 11, 12
ISO 27001 / 27002A.9 (access control), A.10 (cryptography), A.12 (operations security), A.16 (incident management), A.17 (business continuity)Sections 2–11, 14, 15
SOC 2 (Trust Services Criteria)CC6 (logical and physical access), CC7 (system operations), CC8 (change management), CC9 (risk mitigation)Sections 2–9, 12–15
PCI DSSRequirement 7 (restrict access), Requirement 8 (identify users), Requirement 10 (monitor access), Requirement 12 (security policy)Sections 2–9, 15
NIST SP 800-88Media sanitisation guidelinesSection 11, 14
NIST SP 800-63BDigital identity guidelines — authenticationSection 5

17. Training and awareness

All staff receive security awareness training as part of their induction and annual refresher training. The training covers:

  • Access control: How to request ephemeral access, why ZSA matters, how to handle credentials
  • Phishing and social engineering: How to recognise and report phishing attempts, impersonation, and social engineering
  • Password hygiene: Use of password managers, MFA, no credential sharing
  • Incident reporting: How and when to report security concerns
  • Data handling: How to handle client data, what can and cannot be stored locally
  • Secure communication: Use of encrypted channels, no sensitive data in email or chat
  • Device security: Encryption, screen lock, lost device reporting, secure disposal

Training completion is recorded and retained for 5 years. The Security & Compliance Lead reviews and updates the training content annually.

18. Policy review and version history

This policy is reviewed every 6 months by the Security & Compliance Lead and approved by the founder. It is updated whenever:

  • A significant security incident occurs
  • New systems or sub-processors are introduced
  • Regulatory requirements change
  • A security audit or assessment identifies gaps
  • Personnel changes affect access control
// version history
v2.0  2026-08-28  Full rewrite — 19 sections: ZSA model, ephemeral access workflow, TTL matrix, MFA/SSO, RBAC table, credential management, session management, audit logging, incident response, data destruction, third-party access, client codebase access, physical security, compliance mapping, trainingv1.0  2026-08-27  Initial placeholder

19. Contact us

For questions about this Security & Ephemeral Access Policy, to report a security concern, or to request additional information: