Documentation ¶
Index ¶
- Constants
- func AddUserLdapByGroup(groupid string, conf toolkit.M) (err error)
- func ChangePassword(userId string, passwd string) (err error)
- func ChangePasswordToken(userId, passwd, tokenid string) (err error)
- func CreateToken(UserID, TokenPupose string, Validity time.Duration) (err error)
- func Delete(o orm.IModel) error
- func Find(o orm.IModel, filter *dbox.Filter, config toolkit.M) (dbox.ICursor, error)
- func FindActiveSessionByUser(o orm.IModel, userid string) (err error)
- func FindByID(o orm.IModel, id interface{}) error
- func FindDataLdap(addr, basedn, filter string, param toolkit.M) (arrtkm []toolkit.M, err error)
- func FindUserByEmail(o orm.IModel, email string) error
- func FindUserByLoginID(o orm.IModel, id interface{}) error
- func FindUserBySessionID(sessionid string) (userid string, err error)
- func HasAccess(ID interface{}, IDType IDTypeEnum, AccessID string, AccessFind AccessTypeEnum) (found bool)
- func IsSessionIDActive(sessionid string) (stat bool)
- func Login(username, password string) (sessionid string, err error)
- func Logout(sessionid string) (err error)
- func Matchaccess(searchAccess int, sourceAccess int) bool
- func RefreshUserLdapByGroup(groupid string, conf toolkit.M) (err error)
- func ResetPassword(email string) (userid, tokenid string, err error)
- func Save(o orm.IModel) error
- func SetDb(conn dbox.IConnection) error
- func SetExpiredDuration(td time.Duration)
- type Access
- type AccessGrant
- type AccessTypeEnum
- type Group
- type GroupTypeEnum
- type IDTypeEnum
- type LoginTypeEnum
- type Session
- type Token
- type User
- func (u *User) AddToGroup(tGroupID string) error
- func (u *User) GetAccessList() (arrgrant []AccessGrant)
- func (u *User) Grant(tAccessID string, tAccessEnum ...AccessTypeEnum)
- func (u *User) RecordID() interface{}
- func (u *User) RemoveFromGroup(tGroupID string) error
- func (u *User) Revoke(tAccessID string, tAccessEnum ...AccessTypeEnum)
- func (u *User) TableName() string
Constants ¶
View Source
const ( AccessCreate AccessTypeEnum = 1 AccessRead = 2 AccessUpdate = 4 AccessDelete = 8 AccessSpecial1 = 16 AccessSpecial2 = 32 AccessSpecial3 = 64 AccessSpecial4 = 128 )
Variables ¶
This section is empty.
Functions ¶
func AddUserLdapByGroup ¶
Check existing user, if any add group. and set enable
func ChangePassword ¶
UserId using userid
func ChangePasswordToken ¶
func FindActiveSessionByUser ¶
func FindDataLdap ¶
func FindUserByEmail ¶
func FindUserByLoginID ¶
func FindUserByLoginID(o orm.IModel, id interface{}) error
func FindUserBySessionID ¶
func HasAccess ¶
func HasAccess(ID interface{}, IDType IDTypeEnum, AccessID string, AccessFind AccessTypeEnum) (found bool)
ID for IDTypeUser
func IsSessionIDActive ¶
func Matchaccess ¶
func RefreshUserLdapByGroup ¶
if group len == 0, delete user
func ResetPassword ¶
func SetDb ¶
func SetDb(conn dbox.IConnection) error
func SetExpiredDuration ¶
Types ¶
type Access ¶
type Access struct { orm.ModelBase ID string `json:"_id",bson:"_id"` Title string // `json:"Title",bson:"Title"` Group1 string // `json:"Group1",bson:"Group1"` Group2 string // `json:"Group2",bson:"Group2"` Group3 string // `json:"Group3",bson:"Group3"` Enable bool // `json:"Enable",bson:"Enable"` SpecialAccess1 string // `json:"SpecialAccess1",bson:"SpecialAccess1"` SpecialAccess2 string // `json:"SpecialAccess2",bson:"SpecialAccess2"` SpecialAccess3 string // `json:"SpecialAccess3",bson:"SpecialAccess3"` SpecialAccess4 string // `json:"SpecialAccess4",bson:"SpecialAccess4"` }
type AccessGrant ¶
type AccessTypeEnum ¶
type AccessTypeEnum int
func GetAccessEnum ¶
func GetAccessEnum(key string) AccessTypeEnum
func Splitinttogrant ¶
func Splitinttogrant(in int) []AccessTypeEnum
type Group ¶
type Group struct { orm.ModelBase ID string `json:"_id",bson:"_id"` Title string // `json:"Title",bson:"Title"` Enable bool // `json:"Enable",bson:"Enable"` Grants []AccessGrant // `json:"Grants",bson:"Grants"` Owner string // `json:"Owner",bson:"Owner"` GroupType GroupTypeEnum GroupConf toolkit.M MemberConf toolkit.M }
func (*Group) GetAccessList ¶
func (g *Group) GetAccessList() (arrgrant []AccessGrant)
func (*Group) Grant ¶
func (g *Group) Grant(tAccessID string, tAccessEnum ...AccessTypeEnum)
func (*Group) Revoke ¶
func (g *Group) Revoke(tAccessID string, tAccessEnum ...AccessTypeEnum)
type GroupTypeEnum ¶
type GroupTypeEnum int
const ( GroupTypeBasic GroupTypeEnum = iota GroupTypeLdap )
type IDTypeEnum ¶
type IDTypeEnum int
const ( IDTypeUser IDTypeEnum = iota IDTypeGroup IDTypeSession )
type Session ¶
type Token ¶
type Token struct { orm.ModelBase ID string `json:"_id",bson:"_id"` UserID string // `json:"UserId",bson:"UserId"` Created time.Time // `json:"Created",bson:"Created"` Expired time.Time // `json:"Expired",bson:"Expired"` Claimed time.Time // `json:"Claimed",bson:"Claimed"` Purpose string // `json:"Purpose",bson:"Purpose"` Data1 string // `json:"Data1",bson:"Data1"` Data2 string // `json:"Data2",bson:"Data2"` Data3 string // `json:"Data3",bson:"Data3"` Data4 string // `json:"Data4",bson:"Data4"` }
type User ¶
type User struct { orm.ModelBase ID string `json:"_id",bson:"_id"` LoginID string // `json:"LoginID",bson:"LoginID"` FullName string // `json:"FullName",bson:"FullName"` Email string // `json:"Email",bson:"Email"` Password string // `json:"Password",bson:"Password"` Enable bool // `json:"Enable",bson:"Enable"` Groups []string // `json:"Groups",bson:"Groups"` Grants []AccessGrant // `json:"Grants",bson:"Grants"` LoginType LoginTypeEnum LoginConf toolkit.M }
func GetLdapMemberOfGroup ¶
func GetUserByGroup ¶
func (*User) AddToGroup ¶
func (*User) GetAccessList ¶
func (u *User) GetAccessList() (arrgrant []AccessGrant)
func (*User) Grant ¶
func (u *User) Grant(tAccessID string, tAccessEnum ...AccessTypeEnum)
func (*User) RemoveFromGroup ¶
func (*User) Revoke ¶
func (u *User) Revoke(tAccessID string, tAccessEnum ...AccessTypeEnum)
Source Files ¶
Click to show internal directories.
Click to hide internal directories.