auth

package
v0.7.0 Latest Latest
Warning

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

Go to latest
Published: Jul 8, 2018 License: GPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Read    = ReadStrict | Peek
	Refer   = ReferStrict | Read
	Create  = CreateStrict | Read
	Update  = UpdateStrict | Read
	Delete  = DeleteStrict | Read
	Execute = ExecuteStrict | Peek
	CRUD    = Read | Create | Update | Delete | Refer
)

Variables

View Source
var ALLOW_ALL_PERMISSIONS = NewPermission(CRUD|Execute, CRUD|Execute, CRUD|Execute)
View Source
var DEFAULT_PERMISSION = NewPermission(Peek|Refer, CRUD|Execute, CRUD|Execute)

Functions

func BcryptCheckStringHash added in v0.6.5

func BcryptCheckStringHash(newString, hash string) bool

func CheckErr added in v0.6.5

func CheckErr(err error, message ...interface{})

func InitJwtMiddleware

func InitJwtMiddleware(secret []byte, issuer string)

func StartsWith

func StartsWith(bigStr string, smallString string) bool

Types

type AuthMiddleware added in v0.6.5

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

func NewAuthMiddleware

func NewAuthMiddleware(db database.DatabaseConnection, userCrud ResourceAdapter, userGroupCrud ResourceAdapter, userUserGroupCrud ResourceAdapter) *AuthMiddleware

func NewAuthMiddlewareBuilder

func NewAuthMiddlewareBuilder(db database.DatabaseConnection, issuer string) *AuthMiddleware

func (*AuthMiddleware) AuthCheckMiddleware added in v0.6.5

func (a *AuthMiddleware) AuthCheckMiddleware(c *gin.Context)

func (*AuthMiddleware) AuthCheckMiddlewareWithHttp added in v0.6.5

func (a *AuthMiddleware) AuthCheckMiddlewareWithHttp(req *http.Request, writer http.ResponseWriter, doBasicAuthCheck bool) (okToContinue, abortRequest bool, returnRequest *http.Request)

func (*AuthMiddleware) BasicAuthCheckMiddlewareWithHttp added in v0.6.5

func (a *AuthMiddleware) BasicAuthCheckMiddlewareWithHttp(req *http.Request, writer http.ResponseWriter) (token *jwt.Token, err error)

func (*AuthMiddleware) SetUserCrud added in v0.6.5

func (a *AuthMiddleware) SetUserCrud(curd ResourceAdapter)

func (*AuthMiddleware) SetUserGroupCrud added in v0.6.5

func (a *AuthMiddleware) SetUserGroupCrud(curd ResourceAdapter)

func (*AuthMiddleware) SetUserUserGroupCrud added in v0.6.5

func (a *AuthMiddleware) SetUserUserGroupCrud(curd ResourceAdapter)

type AuthPermission added in v0.5.7

type AuthPermission int64
const (
	Peek AuthPermission = 1 << iota
	ReadStrict
	CreateStrict
	UpdateStrict
	DeleteStrict
	ExecuteStrict
	ReferStrict
)
const None AuthPermission = iota

func (AuthPermission) String added in v0.5.7

func (a AuthPermission) String() string

type CmsUser

type CmsUser interface {
	GetName() string
	GetEmail() string
	IsGuest() bool
	IsLoggedIn() bool
}

type GroupPermission

type GroupPermission struct {
	GroupReferenceId    string `db:"GroupReferenceId"`
	ObjectReferenceId   string `db:"ObjectReferenceId"`
	RelationReferenceId string `db:"RelationReferenceId"`
	Permission          ObjectPermission
}

type ObjectPermission added in v0.5.7

type ObjectPermission struct {
	OwnerPermission AuthPermission
	GroupPermission AuthPermission
	GuestPermission AuthPermission
}

func NewPermission added in v0.5.7

func NewPermission(guest AuthPermission, group AuthPermission, owner AuthPermission) ObjectPermission

func ParsePermission added in v0.5.7

func ParsePermission(p int64) ObjectPermission

func (ObjectPermission) GroupCan added in v0.5.7

func (op ObjectPermission) GroupCan(a AuthPermission) bool

func (ObjectPermission) GuestCan added in v0.5.7

func (op ObjectPermission) GuestCan(a AuthPermission) bool

func (ObjectPermission) IntValue added in v0.5.7

func (al ObjectPermission) IntValue() int64

func (ObjectPermission) OwnerCan added in v0.5.7

func (op ObjectPermission) OwnerCan(a AuthPermission) bool

func (*ObjectPermission) Scan added in v0.5.7

func (op *ObjectPermission) Scan(value interface{}) error

func (ObjectPermission) String added in v0.5.7

func (al ObjectPermission) String() string

func (ObjectPermission) Value added in v0.5.7

func (op ObjectPermission) Value() (driver.Value, error)

type ResourceAdapter added in v0.6.5

type ResourceAdapter interface {
	api2go.CRUD
	GetUserPassword(email string) (string, error)
}

type SessionUser added in v0.4.0

type SessionUser struct {
	UserId          int64
	UserReferenceId string
	Groups          []GroupPermission
}

Jump to

Keyboard shortcuts

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