webauthn

package
v0.8.0-alpha.4.pre.1 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2021 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

View Source
const (
	InternalContextKeySessionData = "session_data"
)

Variables

This section is empty.

Functions

func NewWebAuthnConnectionInput

func NewWebAuthnConnectionInput() *node.Node

func NewWebAuthnConnectionName

func NewWebAuthnConnectionName() *node.Node

func NewWebAuthnConnectionTrigger

func NewWebAuthnConnectionTrigger(options string) *node.Node

func NewWebAuthnLoginInput

func NewWebAuthnLoginInput() *node.Node

func NewWebAuthnLoginTrigger

func NewWebAuthnLoginTrigger(options string) *node.Node

func NewWebAuthnScript

func NewWebAuthnScript(src string, contents []byte) *node.Node
func NewWebAuthnUnlink(c *Credential) *node.Node

Types

type Authenticator

type Authenticator struct {
	AAGUID       []byte `json:"aaguid"`
	SignCount    uint32 `json:"sign_count"`
	CloneWarning bool   `json:"clone_warning"`
}

type Credential

type Credential struct {
	ID              []byte        `json:"id"`
	PublicKey       []byte        `json:"public_key"`
	AttestationType string        `json:"attestation_type"`
	Authenticator   Authenticator `json:"authenticator"`
	DisplayName     string        `json:"display_name"`
	AddedAt         time.Time     `json:"added_at"`
}

func CredentialFromWebAuthn

func CredentialFromWebAuthn(credential *webauthn.Credential) *Credential

func (*Credential) ToWebAuthn

func (c *Credential) ToWebAuthn() *webauthn.Credential

type Credentials

type Credentials []Credential

func (Credentials) ToWebAuthn

func (c Credentials) ToWebAuthn() []webauthn.Credential

type CredentialsConfig

type CredentialsConfig struct {
	// List of webauthn credentials.
	Credentials Credentials `json:"credentials"`
}

CredentialsConfig is the struct that is being used as part of the identity credentials.

type Strategy

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

func NewStrategy

func NewStrategy(d registrationStrategyDependencies) *Strategy

func (*Strategy) CountActiveCredentials

func (s *Strategy) CountActiveCredentials(cc map[identity.CredentialsType]identity.Credentials) (count int, err error)

func (*Strategy) ID

func (*Strategy) Login

func (s *Strategy) Login(w http.ResponseWriter, r *http.Request, f *login.Flow, ss *session.Session) (i *identity.Identity, err error)

func (*Strategy) NodeGroup

func (s *Strategy) NodeGroup() node.Group

func (*Strategy) PopulateLoginMethod

func (s *Strategy) PopulateLoginMethod(r *http.Request, requestedAAL identity.AuthenticatorAssuranceLevel, sr *login.Flow) error

func (*Strategy) PopulateSettingsMethod

func (s *Strategy) PopulateSettingsMethod(r *http.Request, id *identity.Identity, f *settings.Flow) error

func (*Strategy) RegisterLoginRoutes

func (s *Strategy) RegisterLoginRoutes(r *x.RouterPublic)

swagger:route GET /.well-known/ory/webauthn.js v0alpha2 getWebAuthnJavaScript

Get WebAuthn JavaScript

This endpoint provides JavaScript which is needed in order to perform WebAuthn login and registration.

If you are building a JavaScript Browser App (e.g. in ReactJS or AngularJS) you will need to load this file:

```html
<script src="https://public-kratos.example.org/.well-known/ory/webauthn.js" type="script" async />
```

More information can be found at [Ory Kratos User Login and User Registration Documentation](https://www.ory.sh/docs/next/kratos/self-service/flows/user-login-user-registration).

Produces:
- text/javascript

Schemes: http, https

Responses:
  200: webAuthnJavaScript

func (*Strategy) RegisterSettingsRoutes

func (s *Strategy) RegisterSettingsRoutes(_ *x.RouterPublic)

func (*Strategy) Settings

func (*Strategy) SettingsStrategyID

func (s *Strategy) SettingsStrategyID() string

Jump to

Keyboard shortcuts

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