INNER CODE UNIT · Go
expiry
platform-engineering-labs/formae · internal/workflow_tests/cmd/test-oidc-issuer/main.go:93
expiry = time.Now().Add(-time.Minute)
}
encode := func(v any) string { b, _ := json.Marshal(v); return base64.RawURLEncoding.EncodeToString(b) }
unsigned := encode(map[string]string{"typ": "JWT", "alg": "RS256", "kid": c.SigningKey}) + "." + encode(map[string]any{"iss": "https://oidc.cloud.formae.ai", "sub": c.Subject, "aud": aud, "iat": time.Now().Add(-2 * time.Minute).Unix(), "exp": expiry.Unix()})
digest := sha256.Sum256([]byte(unsigned))
sig, e := rsa.SignPKCS1v15(rand.Reader, key(c.SigningKey), crypto.SHA256, digest[:])
if e != nil {
http.Error(w, "sign failed", 500)
return
}
_ = json.NewEncoder(w).Encode(map[string]any{"Token": unsigned + "." + base64.RawURLEncoding.EncodeToString(sig), "ExpiresAt": expiry})
})
controller.HandleFunc("/counts", func(w http.ResponseWriter, r *http.Request) {
_ = json.NewEncoder(w).Encode(map[string]int64{"discovery": discovery.Load(), "jwks": jwks.Load(), "mints": mints.Load()})
})
go func() { log.Fatal(http.ListenAndServe(":8080", controller)) }()
fmt.Println("local issuer ready")
log.Fatal(http.ListenAndServeTLS(":443", filepath.Join(dir, "tls.crt"), filepath.Join(dir, "tls.key"), public))