chiauth

package
v0.1.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 4, 2023 License: MPL-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var JWSKey = ctxKey("jws")

JWSKey is used to get the InspectableToken from http.Request.Context().Value(chiauth.JWSKey)

Functions

func GetJWS added in v0.1.3

func GetJWS(r *http.Request) *libauth.JWS

GetJWS retrieves *libauth.JWS from r.Context()

func NewTokenVerifier

func NewTokenVerifier(opts VerificationParams) func(http.Handler) http.Handler

NewTokenVerifier returns a token-verifying middleware

  tokenVerifier := chiauth.NewTokenVerifier(chiauth.VerificationParams{
		Issuers: keyfetch.Whitelist([]string{"https://accounts.google.com"}),
		Optional: false,
  })
  r.Use(tokenVerifier)

  r.Post("/api/users/profile", func(w http.ResponseWriter, r *http.Request) {
		ctx := r.Context()
		jws, ok := ctx.Value(chiauth.JWSKey).(*libauth.JWS)
  })

Types

type VerificationParams

type VerificationParams struct {
	Issuers  keyfetch.Whitelist
	Optional bool
}

VerificationParams specify the Issuer and whether or not the token is Optional (if provided, it must pass verification)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL