spiffeauth

package
v0.48.0 Latest Latest
Warning

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

Go to latest
Published: Sep 10, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package spiffeauth provides shared SPIFFE authentication primitives for the authorization server.

Index

Constants

View Source
const SPIFFEJWTAssertionType = "urn:ietf:params:oauth:client-assertion-type:jwt-spiffe"

SPIFFEJWTAssertionType identifies SPIFFE JWT-SVID client assertions.

Variables

This section is empty.

Functions

func ContextWithSPIFFEID

func ContextWithSPIFFEID(ctx context.Context, id spiffeid.ID) context.Context

ContextWithSPIFFEID returns a new context with the SPIFFE ID stored.

func SPIFFEIDFromContext

func SPIFFEIDFromContext(ctx context.Context) (spiffeid.ID, bool)

SPIFFEIDFromContext retrieves the SPIFFE ID from the context. It returns the zero value and false if no SPIFFE ID is present.

Types

type SPIFFEAuthenticationMethod

type SPIFFEAuthenticationMethod string

SPIFFEAuthenticationMethod identifies the credential type permitted for a SPIFFE workload. Methods are explicit so introducing another credential type cannot silently broaden a policy.

It is declared here, in this leaf package, rather than as authserver's own type: package server's SPIFFEClientResolver (spiffe_client_auth.go) needs a method type for its resolver signature, and package server cannot import authserver (authserver imports server). authserver.SPIFFEAuthenticationMethod stays its own independent plain type; the two are related only by a small explicit conversion at the one call site that constructs the resolver closure (see authserver.newSPIFFEClientResolver).

const (
	// SPIFFEAuthenticationMethodX509 authenticates a workload with an X.509-SVID.
	SPIFFEAuthenticationMethodX509 SPIFFEAuthenticationMethod = "spiffe_x509"
	// SPIFFEAuthenticationMethodJWT authenticates a workload with a JWT-SVID.
	SPIFFEAuthenticationMethodJWT SPIFFEAuthenticationMethod = "spiffe_jwt"
)

Jump to

Keyboard shortcuts

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