Versions in this module Expand all Collapse all v0 v0.9.0 Apr 7, 2020 Changes in this version + const CollectionPendingFIDOLogin + const CollectionPendingFIDORegistration + var ErrPrincipalRevoked = errors.New("principal rekoked") + func ErrorHandler(next http.Handler) http.Handler + func OptionDB(db db.DB) func(*Service) error + func OptionGeoResolver(geo geo.Resolver) func(*Service) error + func OptionKV(kv store.Manager) func(*Service) error + func OptionMessageBroker(broker broker.Broker) func(*Service) error + func OptionParams(params map[string]string) func(*Service) error + func OptionRP(rpDisplayName, rpID, rpOrigin string) func(*Service) error + func UpdateFIDOMetadata(db db.DB, id, mdsToken string) error + type APIError struct + Code int + Detail string + Err error + func NewAPIError(code int, err error, detail string) *APIError + func (e *APIError) BindHTTPRequest(r *http.Request) + func (e *APIError) Error() string + func (e *APIError) MarshalJSON() ([]byte, error) + type Admin interface + AAGUID func(context.Context, string) (*model.AAGUID, error) + AAGUIDBlacklist func(context.Context) (util.StringSet, error) + AAGUIDWhitelist func(context.Context) (util.StringSet, error) + AAGUIDs func(context.Context, *util.APIParams) ([]*model.AAGUID, int64, error) + AddAAGUID func(context.Context, map[string]string) (*model.AAGUID, error) + AddPrincipal func(context.Context, map[string]string) (*model.Principal, error) + DeleteFIDOKey func(context.Context, string) error + FIDOKey func(context.Context, string) (*model.FIDOKey, error) + FIDOKeys func(context.Context, *util.APIParams) ([]*model.FIDOKey, int64, error) + KillSession func(context.Context, string) (*model.Session, error) + LogByID func(context.Context, int64) (*model.AuditEntry, error) + Logs func(context.Context, *util.APIParams) ([]*model.AuditEntry, int64, error) + Principal func(context.Context, string) (*model.Principal, error) + PrincipalByUsername func(context.Context, string) (*model.Principal, error) + Principals func(context.Context, *util.APIParams) ([]*model.Principal, int64, error) + Session func(context.Context, string) (*model.Session, error) + Sessions func(context.Context, *util.APIParams) ([]*model.Session, int64, error) + Stop func() + UpdateAAGUID func(context.Context, string, map[string]string) (*model.AAGUID, string, error) + UpdateFIDOKey func(context.Context, string, map[string]string) (*model.FIDOKey, string, error) + UpdatePrincipal func(context.Context, string, map[string]string) (*model.Principal, string, error) + func NewAdminService(ctx context.Context, options ...func(*Service) error) (Admin, error) + type Auth interface + FinishFIDOLogin func(context.Context, string, *http.Request) (*model.Principal, *APIError) + FinishFIDORegistration func(context.Context, string, *http.Request) (*model.FIDOKey, *APIError) + GetOrCreatePrincipal func(context.Context, map[string]string) (*model.Principal, *APIError) + StartFIDOLogin func(context.Context, string) (*protocol.CredentialAssertion, *APIError) + StartFIDORegistration func(context.Context, string) (*protocol.CredentialCreation, *APIError) + Stop func() + func NewAuthService(ctx context.Context, options ...func(*Service) error) (Auth, error) + type ContextKey int + const ContextError + const ContextIPAddr + const ContextUserAgent + type Service struct + func (s Service) Audit(ctx context.Context, group, action string, p *model.Principal, ...) + func (s Service) Stop()