auth

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Jul 30, 2022 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// AuthenticateMethod is the GRPC method that is used for client authentication
	AuthenticateMethod = "/flow.services.accounts.v1.Accounts/Authenticate"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Authenticator

type Authenticator interface {
	// Name returns the name of the authenticator
	Name() string
	// GetAccount gets a Flow account from the authenticator
	GetAccount(ctx context.Context, username string) (*api.Account, error)
	// Authenticate authenticates the specified user and returns a byte array from the provider
	Authenticate(ctx context.Context, username string, password []byte) ([]byte, error)
	// Logout removes the authenticator key for the specified token
	Logout(ctx context.Context) error
	// GenerateAPIToken generates a new user API token
	GenerateAPIToken(ctx context.Context, description string) (*api.APIToken, error)
	// GenerateServiceToken generates a new service token
	GenerateServiceToken(ctx context.Context, description string, ttl time.Duration) (*api.ServiceToken, error)
	// ListServiceTokens returns all generated service tokens
	ListServiceTokens(ctx context.Context) ([]*api.ServiceToken, error)
	// UnaryServerInterceptor is the default interceptor
	UnaryServerInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error)
	// StreamServerInterceptor is the streaming server interceptor
	StreamServerInterceptor(srv interface{}, stream grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error
	// ValidateAPIToken returns a valid account from the specified api token or an error if invalid
	ValidateAPIToken(ctx context.Context, token string) (*api.Account, error)
}

Directories

Path Synopsis
providers

Jump to

Keyboard shortcuts

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