Documentation
¶
Index ¶
- func AdminAuth(manager *config.ConfigManager) gin.HandlerFunc
- func CORS() gin.HandlerFunc
- func CombinedAdminAuth(manager *config.ConfigManager, userService interface{ ... }) gin.HandlerFunc
- func OptionalUserAuth(manager *config.ConfigManager, userService interface{ ... }) gin.HandlerFunc
- func RateLimit(manager *config.ConfigManager) gin.HandlerFunc
- func SetupGuard(cfg SetupGuardConfig) gin.HandlerFunc
- func ShareAuth(manager *config.ConfigManager) gin.HandlerFunc
- func UserAuth(manager *config.ConfigManager, userService interface{ ... }) gin.HandlerFunc
- type RateLimiter
- type SetupGuardConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AdminAuth ¶
func AdminAuth(manager *config.ConfigManager) gin.HandlerFunc
AdminAuth 管理员认证中间件(基于用户权限)
func CombinedAdminAuth ¶ added in v1.7.1
func CombinedAdminAuth(manager *config.ConfigManager, userService interface { ValidateToken(string) (interface{}, error) }) gin.HandlerFunc
CombinedAdminAuth 支持两类管理员认证: - session-based JWT(由 userService.ValidateToken 验证,返回 *services.AuthClaims,且 Role=="admin") - admin JWT(由 AdminService 生成,使用 manager.User.JWTSecret 签名,claims 为 jwt.MapClaims 且包含 is_admin:true 或 role:"admin")
func OptionalUserAuth ¶
func OptionalUserAuth(manager *config.ConfigManager, userService interface { ValidateToken(string) (interface{}, error) }) gin.HandlerFunc
OptionalUserAuth 可选用户认证中间件(支持匿名和登录用户)
func SetupGuard ¶ added in v1.9.5
func SetupGuard(cfg SetupGuardConfig) gin.HandlerFunc
SetupGuard ensures only setup resources are accessible before initialization and blocks setup routes after initialization is complete.
func UserAuth ¶
func UserAuth(manager *config.ConfigManager, userService interface { ValidateToken(string) (interface{}, error) }) gin.HandlerFunc
UserAuth 用户认证中间件
Types ¶
type RateLimiter ¶
type RateLimiter struct {
// contains filtered or unexported fields
}
RateLimiter 限流器
func NewRateLimiter ¶
func NewRateLimiter() *RateLimiter
func (*RateLimiter) Cleanup ¶
func (rl *RateLimiter) Cleanup()
func (*RateLimiter) GetLimiter ¶
type SetupGuardConfig ¶ added in v1.9.5
type SetupGuardConfig struct {
// IsInitialized returns the current initialization status.
IsInitialized func() (bool, error)
// SetupPath denotes the setup entry path, defaults to /setup.
SetupPath string
// RedirectPath denotes the path to redirect to once initialized, defaults to /.
RedirectPath string
// AllowPaths lists exact paths that should remain accessible before initialization.
AllowPaths []string
// AllowPrefixes lists path prefixes that should remain accessible before initialization.
AllowPrefixes []string
}
SetupGuardConfig controls how the setup guard middleware behaves.
Click to show internal directories.
Click to hide internal directories.