auth

package
v4.6.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Nov 29, 2019 License: MIT Imports: 3 Imported by: 13

Documentation

Overview

Package auth is a lightweight credential store. It provides functionality for loading credentials, as well as validating credentials.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BasicAuther

type BasicAuther interface {
	BasicAuth() (string, string, bool)
}

BasicAuther is the interface an object must support to return basic auth information.

type Credential

type Credential struct {
	Username string   `json:"username,omitempty"`
	Password string   `json:"password,omitempty"`
	Perms    []string `json:"perms,omitempty"`
}

Credential represents authentication and authorization configuration for a single user.

type CredentialsStore

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

CredentialsStore stores authentication and authorization information for all users.

func NewCredentialsStore

func NewCredentialsStore() *CredentialsStore

NewCredentialsStore returns a new instance of a CredentialStore.

func (*CredentialsStore) Check

func (c *CredentialsStore) Check(username, password string) bool

Check returns true if the password is correct for the given username.

func (*CredentialsStore) CheckRequest

func (c *CredentialsStore) CheckRequest(b BasicAuther) bool

CheckRequest returns true if b contains a valid username and password.

func (*CredentialsStore) HasPerm

func (c *CredentialsStore) HasPerm(username string, perm string) bool

HasPerm returns true if username has the given perm. It does not perform any password checking.

func (*CredentialsStore) HasPermRequest

func (c *CredentialsStore) HasPermRequest(b BasicAuther, perm string) bool

HasPermRequest returns true if the username returned by b has the givem perm. It does not perform any password checking, but if there is no username in the request, it returns false.

func (*CredentialsStore) Load

func (c *CredentialsStore) Load(r io.Reader) error

Load loads credential information from a reader.

Jump to

Keyboard shortcuts

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