Services
Digital Platform ModernizationSoon
Intelligent Automation & AISoon
Decentralized & Trust SystemsSoon
Dedicated Technology TeamsSoon
Capabilities
Enterprise Platform EngineeringStrangler-Fig MigrationMulti-Tenant SaaS TopologyEvent-Driven ArchitectureZero-Trust Infrastructure & Cloud IAMFederated API GatewaysE-commerce & Marketplace
Cloud DevOps & ScalabilitySoon
Intelligent Automation & AISoon
Blockchain & Trust SystemsSoon
Dedicated Engineering TeamsSoon
Industries
Healthcare & Life Sciences
Financial Services & FinTech
Supply Chain & Logistics
Education & eLearning
Retail & eCommerce
Oil & Gas
Case StudiesOur ThinkingAboutContactStart a POC
Architecture pattern · Cloud security

Zero trust architecture, from workload identity to least-privilege access.

Replace trust based on network location with verified identity, encrypted service traffic and tested access policies, rolled out in phases and aligned to NIST SP 800-207.

Design targets · not measured results from past client work

Target · Static Credentials0

Workloads receive short-lived credentials at runtime. Any static secret that has to remain is recorded with an owner and an expiry date.

Target · Mesh Coverage100%

Service-to-service traffic inside the mesh uses mutual TLS once the rollout reaches strict mode.

Target · Policy Testing100%

Every access-policy change passes automated tests in CI before it can be deployed.

Target · Audit Coverage100%

Every access decision is logged with the identity, the resource and the outcome, and forwarded to your monitoring.

The short answer

What is zero trust architecture?

Zero trust is a security approach that stops treating network location as proof of trust. NIST SP 800-207, published in August 2020, describes it as a move from defending static network perimeters to protecting users, assets and resources: no implicit trust based on where something sits or who owns it, and authentication and authorization of both user and device before a session with a resource begins. It is an architecture and a program of change, not a single product.

Verify explicitly

Every request is authenticated and authorized using identity and context, for people, devices and workloads alike.

Decide apart from enforcing

A policy engine decides, and an enforcement point (a proxy, a mesh sidecar, the application) applies the decision. Open Policy Agent is a common way to separate the two.

Observe and adjust

NIST SP 800-207A recommends a monitoring framework that tracks events such as access requests, and using that telemetry to tune access rights and require step-up authentication.

Robral delivers zero trust work as four plain deliverables: a maturity assessment of your current access model, a target architecture, a threat model for your critical systems, and a phased roadmap. We then build the first phase with you, starting with a 14-day proof of concept.
Zero trust methodology

Three pillars. No implicit trust.

Identity, authenticated traffic and governed access, built to replace perimeter assumptions step by step.

01
Identity

Workload & User Identity

Every user, service and device gets a verifiable identity, and workloads stop sharing long-lived secrets. SPIFFE gives each workload an ID and a short-lived certificate, rotated automatically through the Workload API.

  • SPIFFE IDs and X.509 SVIDs for workloads
  • Dynamic, short-lived credentials from a secrets manager
  • Single sign-on and strong authentication for people
  • Just-in-time elevation with approval and expiry
02
Service traffic

Authenticated, Encrypted Service Traffic

Network location stops being proof of trust. Services authenticate each other with mutual TLS, introduced gradually: observe in permissive mode, fix the plaintext clients, then enforce strict mode.

  • Mutual TLS between services, namespace by namespace
  • Default-deny authorization between workloads
  • Ingress and egress rules tied to identity
  • Extending identity to services outside the mesh
03
Access governance

Least-Privilege Access & Policy as Code

Authorization decisions move out of scattered service code into policies that are written, reviewed and tested like software. A policy engine such as Open Policy Agent separates deciding from enforcing.

  • Role and attribute-based access, scoped per resource
  • Policies in version control with automated tests
  • Permission reviews based on real usage logs
  • Decision logs for audit and investigation
Implementation path

Six steps, each with a deliverable.

Zero trust is built in stages. The CISA Zero Trust Maturity Model (version 2.0) frames the journey across five pillars (identity, devices, networks, applications and workloads, and data) and four stages: traditional, initial, advanced and optimal. We use it as a common language for progress.

StepWhat happensDeliverableHow you know it is done
1. Map identities and resourcesList every user type, workload and device, the resources they touch and the actions each needs.Identity, resource and permitted-action tableOwners have reviewed it and it matches real access logs.
2. Assess maturityScore the current state against the five pillars and four stages.Maturity assessmentGaps are ranked by risk and effort, not just listed.
3. Threat model critical systemsWalk through how an attacker with one stolen identity could move.Threat model with attack pathsEach path has a control or an accepted-risk decision.
4. Design the target architectureChoose identity, traffic and policy controls for your platforms, cloud and on-premises.Target architecture and decision recordTool choices are tied to your stack, not to a vendor list.
5. Pilot on one sliceApply workload identity, mutual TLS and default-deny to a real set of services.Working pilot and rollback planPilot traffic runs in strict mode with no unplanned outages.
6. Validate and roll out in phasesTest the controls, then extend phase by phase with measurable goals.Phased roadmap and validation reportIndependent testing confirms controls work, and each phase has agreed metrics.

Zero trust maturity is a journey. Most organizations progress pillar by pillar, and the order should follow your risk.

Choosing controls

Which control for which problem?

No single tool delivers zero trust. This table maps common problems to the controls we most often use, and what to watch out for.

ProblemTypical controlHow it helpsWatch out for
Services trust anything inside the networkMutual TLS with workload identity (service mesh)Each workload proves its identity with a short-lived certificate, such as a SPIFFE X.509-SVID, and traffic is encrypted.In Istio, permissive mode is the default and accepts plaintext. Migrate clients first, then enforce strict mode.
Static keys and passwords in configShort-lived credentials from a secrets manager or cloud workload identityCredentials expire quickly, so a leaked one has a small window of use.Applications must renew credentials correctly. Test rotation before relying on it.
Roles are far broader than the jobLeast-privilege IAM review with just-in-time elevationAccess is scoped per resource and elevated only when needed, with an approval and an expiry.Tighten using usage logs, in steps. Keep a logged break-glass path.
Authorization logic copied across servicesA policy engine (for example Open Policy Agent) with policies in GitDecisions are made in one place, tested in CI and logged, while services enforce them.Plan for policy-engine availability and latency, and test policies like code.
Staff reach internal apps through a VPNIdentity-aware access with device posture checksAccess depends on the user, the device state and the app, per request.Posture signals are only as good as the device management behind them. Non-web apps need extra work.
Several clouds and on-premises sitesSeparate trust domains with consistent policyNIST SP 800-207A models policy at the network and identity tiers for cloud-native apps across locations.More environments mean more policy to keep consistent. Start with one slice.

Standards and products change. Check current documentation before you decide. References are listed below.

Key engineering capabilities

The zero trust toolchain.

Core building blocks we include in a zero trust engagement.

Identity-Aware Access for People

Access to internal applications is decided per request from who the user is, the state of their device and the sensitivity of the app, rather than from being on the corporate network.

SSO / SAML / OIDCDevice PostureMFAIdentity-Aware Proxy

Policy as Code

Authorization rules are written in a policy language, stored in Git and tested in CI. Services ask the policy engine for a decision and enforce the answer.

Open Policy AgentRegoGitOpsCI Policy Tests

Audit Logging & Telemetry

Access decisions, credential issuance and policy changes are logged in a consistent format and sent to your SIEM, so an investigation can answer who accessed what, and why it was allowed.

Decision LogsOpenTelemetrySIEM ForwardingRetention Policy

Posture & Drift Detection

Scheduled checks compare live cloud configuration with the approved baseline and flag privilege escalation paths, open ingress and unmanaged security groups. Fixes go through review.

IaC DriftCloud Config ScansAlertingReviewed Remediation
Engineering notes

What the first enforced slice looks like.

After a permissive-mode rollout and a check for plaintext clients, two small policies do most of the early work.

Strict mTLS plus one allowed caller (illustrative, Istio)
# 1. Require mutual TLS for workloads in the "shop" namespace
apiVersion: security.istio.io/v1
kind: PeerAuthentication
metadata:
  name: default
  namespace: shop
spec:
  mtls:
    mode: STRICT
---
# 2. Only the checkout identity may call payments, and only this route
apiVersion: security.istio.io/v1
kind: AuthorizationPolicy
metadata:
  name: payments-allow-checkout
  namespace: shop
spec:
  selector:
    matchLabels:
      app: payments
  action: ALLOW
  rules:
  - from:
    - source:
        principals: ["cluster.local/ns/shop/sa/checkout"]
    to:
    - operation:
        methods: ["POST"]
        paths: ["/v1/charges"]

Istio’s default is permissive mode, which accepts both plaintext and mutual TLS. Its migration guide suggests finding clients still sending plaintext, injecting sidecars, applying strict mode to one namespace, verifying, then widening. Once an ALLOW policy applies to a workload, requests that match no rule are denied. Check the API version against your Istio release.

Zero trust readiness checklist
  • Users, workloads and devices are inventoried, each with an owner.
  • A table lists every critical resource and the actions each identity may perform on it.
  • Static credentials are found, ranked by risk and replaced with short-lived ones, with exceptions recorded.
  • Mutual TLS is rolled out in permissive mode first, with plaintext clients identified before strict mode.
  • Workload-to-workload access is default-deny, with explicit allow rules per caller and route.
  • Authorization policies live in version control and are tested automatically before deployment.
  • Every access decision and credential issuance is logged with identity, resource and outcome.
  • A logged break-glass procedure exists and has been exercised.
  • Each rollout phase has agreed success metrics and a rollback plan.
Common mistakes

Where zero trust programs go wrong.

Six failure patterns we design against from the first week.

Buying a product and calling it done

Zero trust is an architecture and an ongoing program, not a single product you can install. Tools help, but the work is in identities, policies and the processes behind them.

Program, not productOwnershipRoadmap

Strict mTLS on day one

Switching straight to strict mode breaks every client that still sends plaintext. Start in permissive mode, find the stragglers, then enforce namespace by namespace.

Permissive firstStaged rolloutRollback plan

Identity without authorization

Knowing which service is calling is only half the job. Without default-deny policies, every authenticated workload can still call every other one.

Default denyLeast privilegePer-route rules

Cutting permissions blind

Removing roles without looking at real usage breaks production. Use access logs to find what is actually needed, then tighten in steps with a way back.

Usage-based reviewStaged tighteningBreak-glass

Secrets that cannot rotate

Short-lived credentials only work if applications can renew them. Test rotation under load before you depend on it, and keep a break-glass path that is logged.

Renewal testsExpiry alertsBreak-glass

Policy nobody can prove

If you cannot show which policy allowed which request, you cannot answer an auditor or an incident review. Log decisions and keep policy history in version control.

Decision logsGit historyEvidence
What you receive

A working zero trust sandbox. In 14 days.

01

Live Identity & Mesh Sandbox

A mesh deployed in a dedicated environment with workload identities, mutual TLS and default-deny rules applied to one real slice of your services.

02

Access Decision Console

A dashboard for credential issuance, allow and deny decisions per service pair, and policy test results.

03

Infrastructure as Code & Policy Tests

Terraform, mesh and policy configuration with automated tests in CI, ready for your engineers to run and extend.

Not slides. Not a proposal. A live environment enforcing identity and access rules on a real slice of your services.
Choosing a partner

How to choose a zero trust consulting partner.

Six questions to ask any firm, including us, and the evidence to request.

01

Standards grounding

Ask how their approach maps to NIST SP 800-207 and the CISA Zero Trust Maturity Model. Evidence to request: a sample assessment showing pillar-by-pillar findings.

Red flag: "zero trust is our product"
02

Deliverables

Ask exactly what you receive. Evidence to request: sample maturity assessment, target architecture, threat model and phased roadmap, with names redacted.

Red flag: only slides
03

Staged approach

Ask how rollout is sequenced. Look for assessment, then a pilot on one slice, then independent validation, and phased expansion with rollback plans.

Red flag: big-bang cutover
04

Workload identity

Ask how services will authenticate each other and how credentials rotate. Look for short-lived certificates, tested renewal and a plan for services outside the mesh.

Red flag: shared secrets stay
05

Proof it works

Ask how controls are tested. Evidence to request: a sample test plan, policy tests in CI, and what independent validation covers.

Red flag: "trust us, it is secure"
06

Ownership and handover

Ask what you own at the end. Look for infrastructure as code, runbooks, policy repositories and training, with acceptance criteria agreed up front.

Red flag: black-box delivery
Questions and answers

Zero trust architecture: common questions.

What is zero trust architecture?

Zero trust architecture is a security design that gives no implicit trust based on network location or asset ownership. NIST SP 800-207 describes a shift from defending static network perimeters to protecting users, assets and resources, with authentication and authorization of both user and device before a session with a resource begins.

Is zero trust a product I can buy?

No. It is an architecture and a program of change that involves identity, devices, networks, applications and data. Products such as identity providers, service meshes and policy engines support it, but no single product delivers it.

What is the CISA Zero Trust Maturity Model?

It is a roadmap published by CISA. Version 2.0, released in April 2023, covers five pillars (identity, devices, networks, applications and workloads, and data) with three cross-cutting capabilities (visibility and analytics, automation and orchestration, governance) across four maturity stages: traditional, initial, advanced and optimal.

How does zero trust apply to microservices and multiple clouds?

NIST SP 800-207A addresses cloud-native applications in multi-location environments. It recommends defining policies at the network and identity tiers, configuring components such as gateways and service identity infrastructure to enforce them, and monitoring events to tune access.

What is workload identity, and what is SPIFFE?

Workload identity gives each running service a verifiable identity instead of a shared secret. SPIFFE is a standard for this. A SPIFFE ID is a URI such as spiffe://acme.com/billing/payments, proven by an SVID, which is an X.509 certificate or a JWT. The Workload API delivers short-lived credentials that are rotated automatically.

Can I turn on strict mutual TLS straight away?

Usually not. In Istio, permissive mode is the default and accepts both plaintext and mutual TLS. Strict mode accepts only mutual TLS, so clients that still send plaintext will fail. Istio recommends finding those clients, migrating them, then applying strict mode to a namespace before widening it.

How long does a zero trust program take?

It depends on how many systems, identities and environments are involved, and it is normally delivered in phases rather than once. A proof of concept on one slice of your services is the quickest way to get a realistic estimate, and we deliver that as a 14-day sandbox.

Reduce implicit trust

Ready to replace perimeter trust with verified access?

Work with our principal security architects to assess your current access model and plan a phased zero trust roadmap.