Documentation ¶
Index ¶
- Constants
- Variables
- func BcryptCheckStringHash(newString, hash string) bool
- func CheckErr(err error, message ...interface{})
- func InitJwtMiddleware(secret []byte, issuer string, db *olric.Olric)
- func PrepareAuthQueries()
- func StartsWith(bigStr string, smallString string) bool
- type AuthMiddleware
- func (a *AuthMiddleware) AuthCheckMiddleware(c *gin.Context)
- func (a *AuthMiddleware) AuthCheckMiddlewareWithHttp(req *http.Request, writer http.ResponseWriter, doBasicAuthCheck bool) (okToContinue, abortRequest bool, returnRequest *http.Request)
- func (a *AuthMiddleware) BasicAuthCheckMiddlewareWithHttp(req *http.Request, writer http.ResponseWriter) (token *jwt.Token, err error)
- func (a *AuthMiddleware) SetUserCrud(curd ResourceAdapter)
- func (a *AuthMiddleware) SetUserGroupCrud(curd ResourceAdapter)
- func (a *AuthMiddleware) SetUserUserGroupCrud(curd ResourceAdapter)
- type AuthPermission
- type CachedUserAccount
- type GroupPermission
- type ResourceAdapter
- type SessionUser
Constants ¶
View Source
const ( GuestCRUD = GuestPeek | GuestRead | GuestCreate | GuestUpdate | GuestDelete | GuestRefer UserCRUD = UserPeek | UserRead | UserCreate | UserUpdate | UserDelete | UserRefer GroupCRUD = GroupPeek | GroupRead | GroupCreate | GroupUpdate | GroupDelete | GroupRefer )
Variables ¶
View Source
var ALLOW_ALL_PERMISSIONS = GuestCRUD | GuestExecute | UserCRUD | UserExecute | GroupCRUD | GroupExecute
View Source
var DEFAULT_PERMISSION = GuestPeek | GuestExecute | UserCRUD | UserExecute | GroupCRUD | GroupExecute
View Source
var DEFAULT_PERMISSION_WHEN_ON_ADMIN = GuestCRUD | GuestExecute | UserCRUD | UserExecute | GroupCRUD | GroupExecute
View Source
var LocalUserCacheLock = sync.Mutex{}
var LocalUserCacheMap = make(map[string]CachedUserAccount)
View Source
var UserGroupSelectQuery = statementbuilder.Squirrel.Select(
goqu.I("ug.reference_id").As("groupreferenceid"),
goqu.I("uug.reference_id").As("relationreferenceid"),
goqu.I("uug.permission")).
From(goqu.T("usergroup").As("ug")).
Join(goqu.T("user_account_user_account_id_has_usergroup_usergroup_id").As("uug"),
goqu.On(goqu.Ex{
"uug.usergroup_id": goqu.I("ug.id"),
}))
Functions ¶
func BcryptCheckStringHash ¶ added in v0.6.5
func PrepareAuthQueries ¶ added in v0.9.9
func PrepareAuthQueries()
func StartsWith ¶
Types ¶
type AuthMiddleware ¶ added in v0.6.5
type AuthMiddleware struct {
// contains filtered or unexported fields
}
func NewAuthMiddlewareBuilder ¶
func NewAuthMiddlewareBuilder(db database.DatabaseConnection, issuer string, olricDb *olric.Olric) *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 ( GuestPeek AuthPermission = 1 << iota GuestRead GuestCreate GuestUpdate GuestDelete GuestExecute GuestRefer UserPeek UserRead UserCreate UserUpdate UserDelete UserExecute UserRefer GroupPeek GroupRead GroupCreate GroupUpdate GroupDelete GroupExecute GroupRefer )
const None AuthPermission = iota
func (AuthPermission) String ¶ added in v0.5.7
func (a AuthPermission) String() string
type CachedUserAccount ¶ added in v0.9.9
type CachedUserAccount struct { Account SessionUser Expiry time.Time }
type GroupPermission ¶
type GroupPermission struct { GroupReferenceId string `db:"groupreferenceid"` ObjectReferenceId string `db:"objectreferenceid"` RelationReferenceId string `db:"relationreferenceid"` Permission AuthPermission }
type ResourceAdapter ¶ added in v0.6.5
type SessionUser ¶ added in v0.4.0
type SessionUser struct { UserId int64 UserReferenceId string Groups []GroupPermission }
Click to show internal directories.
Click to hide internal directories.