Skip to content

Development Mode

When running in Development or Simulation mode without an OIDC provider, Adsify activates a DevBypass authentication handler that grants full admin access to all endpoints.

When is DevBypass active?

Both conditions must be true:

  1. ASPNETCORE_ENVIRONMENT is Development or Simulation
  2. Authentication:Authority is empty or not configured
Simulation is unauthenticated by design, the same as Development: it exists to run the API against a simulated PLC with zero setup, and DevBypass — full admin access, no token required — is part of that zero-setup story. This is a local-development-only profile. Never run a Simulation deployment on a shared network.

DevBypass claims

The bypass handler issues a token with:

ClaimValue
Roleadmin
Scopesads:read, ads:write, ads:lifecycle

This means all endpoints are accessible without authentication headers.

Running locally

ASPNETCORE_ENVIRONMENT=Development dotnet run \
  --project src/Adsify.Api \
  --urls "http://localhost:5000"

Running tests

dotnet test Adsify.sln

The integration tests use their own TestAuthHandler that supports configurable roles, scopes, and plc_access claims per test.