Browse Source

update docs

pem2
AJ ONeal 5 years ago
parent
commit
2a0ab16a1c
  1. 37
      keyserve/doc.go
  2. 10
      keyserve/keyserve.go

37
keyserve/doc.go

@ -0,0 +1,37 @@
/*
Package keyserve provides middleware to serve Public Keys
via OIDC-style (https://example.com/.well-known/openid-configuration)
and Auth0-style (https://example.com/.well-known/jwks.json)
URLs. It uses the keypairs package to encode to JWK format.
Basic usage:
import (
"crypto/ecdsa"
"crypto/rand"
"time"
"github.com/big-squid/go-keypairs/keyserve"
)
key, _ := ecdsa.GenerateKey(elliptic.P256, rand.Reader)
pub := key.Public()
handlers := &keyserve.Middleware{
// the self-reference used for building the openid-configuration url
BaseURL: "https://example.com/",
// public keys used to verify token signatures
Keys: []keypairs.PublicKey{ keypairs.NewPublicKey(pub) }
// how long clients should cache your public key
ExpiresIn: 72 * time.Hour
}
You can then use the handlers anywhere http.HandleFunc is allowed:
http.HandleFunc(keyserve.PEMPath, handlers.Auth0PEM)
http.HandleFunc(keyserve.JWKsPath, handlers.WellKnownJWKs)
http.HandleFunc(keyserve.OIDCPath, handlers.WellKnownOIDC)
*/
package keyserve

10
keyserve/keyserve.go

@ -1,7 +1,3 @@
// Package keyserve provides middleware to serve Public Keys
// via OIDC-style (https://example.com/.well-known/openid-configuration)
// and Auth0-style (https://example.com/.well-known/jwks.json)
// URLs. It uses the keypairs package to encode to JWK format.
package keyserve
import (
@ -31,8 +27,8 @@ const OIDCPath = "/.well-known/openid-configuration"
var oidcURL, _ = url.Parse(".well-known/openid-configuration")
// Auth0PEMPath is "/pem" (Auth0 convention)
const Auth0PEMPath = "/pem"
// PEMPath is "/pem" (Auth0 convention)
const PEMPath = "/pem"
var auth0PEMURL, _ = url.Parse("pem")
@ -66,7 +62,7 @@ func (m *Middleware) Handler(w http.ResponseWriter, r *http.Request) bool {
return true
}
if strings.HasSuffix(r.URL.Path, Auth0PEMPath) {
if strings.HasSuffix(r.URL.Path, PEMPath) {
m.Auth0PEM(w, r)
return true
}

Loading…
Cancel
Save