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))

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…