Add user Roles
This commit is contained in:
@@ -18,3 +18,15 @@ type FileHandler interface {
|
||||
UploadProfileAvatar(c *gin.Context)
|
||||
UploadDocument(c *gin.Context)
|
||||
}
|
||||
|
||||
type RBACHandler interface {
|
||||
CreatePermission(c *gin.Context)
|
||||
UpdatePermission(c *gin.Context)
|
||||
DeletePermission(c *gin.Context)
|
||||
ListPermissions(c *gin.Context)
|
||||
|
||||
CreateRole(c *gin.Context)
|
||||
UpdateRole(c *gin.Context)
|
||||
DeleteRole(c *gin.Context)
|
||||
ListRoles(c *gin.Context)
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ type Router struct {
|
||||
authMiddleware AuthMiddleware
|
||||
userHandler UserHandler
|
||||
fileHandler FileHandler
|
||||
rbacHandler RBACHandler
|
||||
}
|
||||
|
||||
func NewRouter(
|
||||
@@ -23,6 +24,7 @@ func NewRouter(
|
||||
healthHandler HealthHandler,
|
||||
userHandler UserHandler,
|
||||
fileHandler FileHandler,
|
||||
rbacHandler RBACHandler,
|
||||
) *Router {
|
||||
return &Router{
|
||||
config: cfg,
|
||||
@@ -31,6 +33,7 @@ func NewRouter(
|
||||
healthHandler: healthHandler,
|
||||
userHandler: userHandler,
|
||||
fileHandler: fileHandler,
|
||||
rbacHandler: rbacHandler,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,5 +80,18 @@ func (r *Router) addAppRoutes(rg *gin.Engine) {
|
||||
{
|
||||
files.POST("/documents", r.fileHandler.UploadDocument)
|
||||
}
|
||||
|
||||
rbac := v1.Group("/rbac")
|
||||
rbac.Use(r.authMiddleware.RequireAuth())
|
||||
{
|
||||
rbac.GET("/permissions", r.rbacHandler.ListPermissions)
|
||||
rbac.POST("/permissions", r.rbacHandler.CreatePermission)
|
||||
rbac.PUT("/permissions/:id", r.rbacHandler.UpdatePermission)
|
||||
rbac.DELETE("/permissions/:id", r.rbacHandler.DeletePermission)
|
||||
rbac.GET("/roles", r.rbacHandler.ListRoles)
|
||||
rbac.POST("/roles", r.rbacHandler.CreateRole)
|
||||
rbac.PUT("/roles/:id", r.rbacHandler.UpdateRole)
|
||||
rbac.DELETE("/roles/:id", r.rbacHandler.DeleteRole)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user