Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Application ¶
type Application struct {
ID string `json:"id" binding:"required"`
Name string `json:"name" binding:"required"`
}
Application store a service deployment
type PublicUser ¶
type PublicUser struct {
*User
ObjectID omit `json:"-"`
Password omit `json:"password,omitempty"`
}
PublicUser expose defined fields on JSON marshalling
type RequestAuthorization ¶
type RequestAuthorization struct {
SubjectID string `json:"subject" binding:"required"`
ObjectID string `json:"object" binding:"required"`
Permissions []Permission `json:"permissions" binding:"required"`
}
RequestAuthorization contains authz request
type RequestLogin ¶
type RequestLogin struct {
Username string `json:"username" binding:"required,min=3,max=64"`
Password string `json:"password" binding:"required,min=3"`
}
RequestLogin contains login request
type RequestRegister ¶
type RequestRegister struct {
Username string `json:"username" binding:"required,min=3,max=64"`
Password string `json:"password" binding:"required,min=3"`
Email string `json:"email" binding:"required,min=4,email"`
}
RequestRegister contains login request
func (*RequestRegister) ToUser ¶
func (r *RequestRegister) ToUser() User
ToUser convert to a User model
type ResponseLogin ¶
type ResponseLogin struct {
PublicUser
}
ResponseLogin a response login
func NewResponseLogin ¶
func NewResponseLogin(user *User) ResponseLogin
NewResponseLogin init a ResponseLogin
type Role ¶
type Role struct {
Name string `json:"name" binding:"required"`
Permissions []Permission `json:"permissions,omitempty"`
}
Role informations
type Token ¶
type Token struct {
ObjectID bson.ObjectId `json:"-" bson:"_id"`
UserID string `json:"userId"`
Value string `json:"token"`
Expires time.Time `json:"expires"`
Created time.Time
}
Token for authentication
func (*Token) GenerateJWTToken ¶
GenerateJWTToken generate a JWT token
type User ¶
type User struct {
ObjectID bson.ObjectId `json:"-" bson:"_id"`
ID string `json:"id"`
Enabled bool `json:"enabled"`
Username string `json:"username" binding:"required,min=3,max=64"`
Password string `json:"password,omitempty" binding:"required,min=3"`
Email string `json:"email" binding:"required,min=4,email"`
Roles []Role `json:"roles" binding:"required"`
SessionToken string `json:"sessionToken,omitempty"`
Applications []string `json:"applications,omitempty"`
Profile Profile `json:"profile,omitempty"`
}
User profile informations
func (*User) ToPublicUser ¶
func (u *User) ToPublicUser() PublicUser
ToPublicUser return a specialized struct for serialization
Click to show internal directories.
Click to hide internal directories.