Lion Cipher Lab

Secure a gRPC service: TLS on the wire and a token on every call

Why it matters

gRPC is how a huge share of modern INTERNAL APIs talk — microservices, service meshes, control planes, mobile-to-backend — because HTTP/2 plus Protocol Buffers gives you a fast, compact, strongly-typed contract with generated clients in a dozen languages. But the shape that makes it great also makes its insecure default dangerous: the first thing every tutorial hands you is grpc.insecure_channel and server.add_insecure_port — plaintext bytes on the wire and zero authentication — and because gRPC lives BEHIND the front door, on a 'trusted' internal network, that default quietly ships to…

What you'll learn

Steps in this lab

  1. What gRPC is, and when to reach for it (vs REST/GraphQL)
  2. Set up: install the tools and write the contract (.proto)
  3. Run it the beginner way — an INSECURE channel (feel the default)
  4. Layer 1 — transport security: TLS with a self-signed certificate
  5. Layer 2 — per-call authorization: a token in metadata + a server interceptor
  6. Do it better in production — and the common mistakes to avoid

Open the full interactive lab →