auth

package
v0.1.11 Latest Latest
Warning

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

Go to latest
Published: Jun 5, 2026 License: MPL-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultMCPAuthStatusFromConfig

func DefaultMCPAuthStatusFromConfig(cfg spec.MCPServerConfig) spec.MCPAuthStatus

func ValidateOAuthClientCredentialsSecret

func ValidateOAuthClientCredentialsSecret(raw string, requireClientSecret bool) error

Types

type AuthManager

type AuthManager struct {
	// contains filtered or unexported fields
}

func NewAuthManager

func NewAuthManager(secrets SecretResolver, opts ...AuthManagerOption) *AuthManager

func (*AuthManager) ClearAuthStatus

func (m *AuthManager) ClearAuthStatus(bundleID bundleitemutils.BundleID, serverID spec.MCPServerID)

func (*AuthManager) ClearAuthStatuses

func (m *AuthManager) ClearAuthStatuses()

func (*AuthManager) GetAuthStatus

func (m *AuthManager) GetAuthStatus(
	bundleID bundleitemutils.BundleID,
	serverID spec.MCPServerID,
) (spec.MCPAuthStatus, bool)

func (*AuthManager) PrepareTransportAuth

func (m *AuthManager) PrepareTransportAuth(
	ctx context.Context,
	cfg spec.MCPServerConfig,
) (ResolvedTransportAuth, error)

func (*AuthManager) SaveAuthStatus

func (m *AuthManager) SaveAuthStatus(ctx context.Context, st spec.MCPAuthStatus) error

type AuthManagerOption

type AuthManagerOption func(*AuthManager)

func WithAuthHTTPClient

func WithAuthHTTPClient(client *http.Client) AuthManagerOption

func WithOAuthAuthorizationBroker

func WithOAuthAuthorizationBroker(broker OAuthAuthorizationBroker) AuthManagerOption

func WithOAuthRedirectURL

func WithOAuthRedirectURL(redirectURL string) AuthManagerOption

type AuthStatusSink

type AuthStatusSink interface {
	SaveAuthStatus(ctx context.Context, st spec.MCPAuthStatus) error
}

type OAuthAuthorizationBroker

type OAuthAuthorizationBroker interface {
	FetchAuthorizationCode(
		ctx context.Context,
		req OAuthAuthorizationRequest,
	) (*OAuthAuthorizationResult, error)
}

type OAuthAuthorizationRequest

type OAuthAuthorizationRequest struct {
	BundleID         string
	ServerID         spec.MCPServerID
	AuthorizationURL string
}

type OAuthAuthorizationResult

type OAuthAuthorizationResult struct {
	Code  string
	State string
	Iss   string
}

type OAuthLoopbackBroker

type OAuthLoopbackBroker struct {
	// contains filtered or unexported fields
}

func (*OAuthLoopbackBroker) Cancel

func (b *OAuthLoopbackBroker) Cancel(bundleID bundleitemutils.BundleID, serverID spec.MCPServerID) bool

func (*OAuthLoopbackBroker) Close

func (b *OAuthLoopbackBroker) Close() error

func (*OAuthLoopbackBroker) FetchAuthorizationCode

func (*OAuthLoopbackBroker) Pending

func (*OAuthLoopbackBroker) RedirectURL

func (b *OAuthLoopbackBroker) RedirectURL() string

func (*OAuthLoopbackBroker) ServeHTTP

func (b *OAuthLoopbackBroker) ServeHTTP(w http.ResponseWriter, r *http.Request)

type OAuthLoopbackBrokerOptions

type OAuthLoopbackBrokerOptions struct {
	TTL          time.Duration
	CallbackPath string
	Logger       *slog.Logger
}

type ResolvedTransportAuth

type ResolvedTransportAuth struct {
	Env             map[string]string
	SensitiveValues []string
	Status          spec.MCPAuthStatus
	OAuthHandler    mcpAuth.OAuthHandler
}

type SecretRedactor

type SecretRedactor struct {
	// contains filtered or unexported fields
}

func NewSecretRedactor

func NewSecretRedactor(resolved ResolvedTransportAuth) *SecretRedactor

func (*SecretRedactor) Redact

func (r *SecretRedactor) Redact(s string) string

type SecretResolver

type SecretResolver interface {
	ResolveSecret(ctx context.Context, ref string) (string, error)
}

type StaticSecretResolver

type StaticSecretResolver map[string]string

func (StaticSecretResolver) ResolveSecret

func (r StaticSecretResolver) ResolveSecret(ctx context.Context, ref string) (string, error)

Jump to

Keyboard shortcuts

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