The GitHub Actions job "Required Checks" on 
texera.git/feat/5561-agent-service-auth has failed.
Run started by GitHub user Alwaysgaurav1 (triggered by Alwaysgaurav1).

Head commit for run:
6e8f9914fb235e81eeee7566a39edef72aab3d38 / alwaysgaurav1 
<[email protected]>
feat(agent): authenticate agent-service requests via JWT + gateway ext_authz 
(#5561)

Authorize requests reaching the agent service using JWT signature
verification and gateway external authorization, providing defense in depth:

1. agent-service:
   - Added real HS256 signature verification in config/jwt.ts using
     crypto.createHmac and timingSafeEqual.
   - Resolves shared secret from AUTH_JWT_SECRET env or auth.conf with
     30-second clock skew tolerance.
   - Added .onBeforeHandle guard on agentsRouter rejecting unauthenticated,
     expired, or invalid tokens with 401.
   - Added access-token query param check in WebSocket open() handler.

2. access-control-service:
   - Added /api/agents routing branch in AccessControlResource.
   - Verifies JWT validity and enforces REGULAR or ADMIN role.
   - Forwards trusted identity headers (x-user-id, x-user-name, x-user-email).

3. Gateways & Deployment:
   - bin/single-node/nginx.conf: Added auth_request /_agent_auth subrequest
     on /api/agents routing to access-control-service.
   - bin/k8s/templates/base/gateway/gateway-agent-security-policy.yaml: Added 
Envoy
     SecurityPolicy for agent-service-route.
   - bin/k8s/templates/base/agent-service/agent-service-deployment.yaml: Passed
     texeraEnvVars into agent-service container.
   - bin/dockerfiles/agent-service.dockerfile: Bundled auth.conf for container 
runtime.

4. Frontend:
   - Attaches Authorization Bearer token via agentHeaders() to REST requests.
   - Appends ?access-token= query param to WebSocket connection in 
startStatePolling().
   - Added unit tests in agent.service.spec.ts.

Report URL: https://github.com/apache/texera/actions/runs/39377521670

With regards,
GitHub Actions via GitBox

Reply via email to