Documentation ¶
Index ¶
Constants ¶
View Source
const ( AccountPrefix = `cs_` // 账户前缀 SortAsc = `asc` // 排序升序 SortDesc = `desc` // 排序降序 )
View Source
const ( JWTTokenHash = `jwt.token.hash:` // JSON Web Tokens 缓存KEY LoginAuthExpire = time.Minute * 30 // 登录授权缓存登录信息效期时间 LoginAuthToken = `login.auth.user.token:` // 登录授权缓存Token:login.auth.user.token:{uid}-{token} LoginAdminAuthToken = `login.admin.auth.user.token:` // 管理员登陆TOKEN:login.admin.auth.user.token:{token} LoginAdminAuthPermMenu = `login.admin.auth.perm.menu:` // 登录管理员权限菜单:login.admin.auth.perm.menu:{token} LoginAdminAuthPermAction = `login.admin.auth.perm.action:` // 登录管理员操作权限:login.admin.auth.perm.action:{token} LoginAdminAuthPermId = `login.admin.auth.perm.id:` // 登录管理员权限ID集合:login.admin.auth.perm.id:{token} )
JWT TOKEN
View Source
const ( // SafeSecretPrefix 密钥 SafeSecretPrefix = `safe.secret.` // 安全密钥前缀 SafeSecretTagIp = `tag.ip:` // 安全密钥缓存KEY idea.space.safe.secret.tag.mac:{tag}-{mac} SafeSecret1MinuteLockTagIp = `1minute.lock.tag.ip:` // 同一Mac1分钟内锁定 idea.space.safe.secret.1minute.lock.tag.mac:{tag}-{mac} SafeSecret1HourLockTagIp = `1hour.lock.num.tag.ip:` // 同一Mac1小时内刷新数量 idea.space.safe.secret.1hour.lock.tag.mac:{tag}-{mac} SafeSecret1MinuteTag = `1minute.lock.num.tag:` // 同个tag一分钟刷新数量,锁定半小时 idea.space.safe.secret.1minute.refresh.num.lock.tag:{tag} SafeSecret24HourTag = `24hour.lock.num.tag:` // 同个tag24小时刷新数量,锁定截止当天0点 idea.space.safe.secret.24hour.lock.tag:{tag} // SafeSmsCaptchaPrefix 短信验证码规则 SafeSmsCaptchaPrefix = `safe.sms.captcha.` // 缓存前缀【CachePrefix + SafeSmsCaptchaPrefix】 SafeSmsCaptchaSendMobile = `send.mobile:` // 短信验证码发送 SafeSmsCaptcha1MinuteLockMobile = `mobile.1minute.send.lock:` // idea.space.safe.sms.captcha.mobile.1minute.send.lock:{mobile} // 同一手机号锁定一分钟 SafeSmaCaptcha1MinuteLockIp = `ip.1minute.send.lock:` // 同一Mac锁定一分钟 idea.space.safe.sms.captcha.mac.1minute.send.lock:{mac} SafeSmsCaptchaHalfHourNumIp = `ip.half.hour.send.num:` // 同一Mac半小时发送数量 SafeSmsCaptcha1HourNumMobile = `mobile.1hour.send.num:` // 同一手机号一小时发送数量 idea.space.safe.sms.captcha.mobile.1hour.send.num:{mobile} SafeSmsCaptcha1MinuterNum = `1minute.send.num` // 一分钟发送数量 SafeSmsCaptcha1HourNum = `1hour.send.num` // 1小时发送数量 SafeSmsCaptcha24HourNum = `24hour.send.num` // 24小时发送数量 // SafeLoginPrefix 账户登录安全规则 SafeLoginPrefix = `safe.user.login.` // 账户安全缓存前缀 SafeLoginIp = `ip:` // 用户登录MAC地址 mac:{mac} SafeLoginAccountIp = `ip.account:` // 用户账户登录key mac.account:{account}-{mac} // 用户找回密码-安全规则 SafeForgotPwdIp = `safe.user.forgot.pwd.ip:` // 用户找回密码:safe.user.forgot.pwd.mac:{ip} SafeForgotPwdCaptcha = `safe.user.forgot.pwd.captcha.mobile:` // 找回密码-验证短信验证码:safe.user.forgot.pwd.captcha.mobile:{mobile} // 用户修改密码-安全规则 SafeUpdatePwdCaptcha = `safe.user.update.pwd.captcha.mobile:` // 修改密码-验证短信验证码:safe.user.update.pwd.captcha.mobile:{mobile} )
安全规则
View Source
const ( HttpMethodGet = `GET` HttpMethodPost = `POST` HttpMethodHeader = `HEADER` HttpMethodCookie = `COOKIE` HttpMethodPut = `PUT` HttpMethodDelete = `DELETE` )
HTTP 请求方式
View Source
const ( LanguageChinese = `zh-CN` LanguageEnglish = `en` LanguageUSA = `en-US` )
View Source
const ( ChsDash = `^[\x{4e00}-\x{9fa5}0-9a-zA-Z\s.,,!?;:\'\"-]+$` // 匹配中英文数字以及中英文标点符号 ChsAlphaNum = `^[\x{4e00}-\x{9fa5}0-9a-zA-Z]+$` // 汉字、字母、数字 AlphaNum = `^[0-9a-zA-Z]+$` // 字母、数字 AlphaDash = `^[0-9a-zA-Z_-]+$` // 验证某个字段的值是否为字母和数字,下划线_及破折号-,例如 MatchScanIsEmpty = `sql: no rows in result set` // 匹配Scan数据是否为空 MatchSetParams = `{\d+}` // 短信模板参数替换 MatchPhone = `^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$` // 手机号 )
View Source
const ( SafeSecret1HourRefreshLimitNumTagMac = 300 // 同一个Mac刷新同一个Tag1小时内只允许300次 SafeSecret1MinuteRefreshLimitNumTagMac = 10 // 同一个Mac刷新同一个Tag一分钟内只允许10次 SafeSecret1MinuteRefreshLimitNumTag = 600 // 同一个Tag每分钟允许刷新600次 SafeSecret24HourRefreshLimitNumTag = 100000 // 同一个Tag每天允许刷新10W次 )
View Source
const ( SmsCaptchaHalfHourSendNumMac = 10 // 同一个Mac半小时发送数量不存超过10次 SmsCaptcha1HourSendNumMobile = 10 // 同一个手机号一个小时发送数量不超过10次 SmsCaptcha1MinuteSendTotal = 120 // 一分钟内发送验证码数量不超过120次 SmsCaptcha1HourSendTotal = 600 // 一小时发送短信数量不超过600次 SmsCaptcha24HourSendTotal = 3000 // 24小时内发送短信数量不超过3000次 )
*
3.1 同一手机号一分钟内只能发送一次:idea.space.safe.sms.captcha.mobile.1minute.send.lock:{mobile} // 同一手机号锁定一分钟 3.3 同一个Mac地址一分钟内发送次数一次:idea.space.safe.sms.captcha.mac.1minute.send.lock:{mac} // 同一Mac锁定一分钟 3.4 同一个Mac地址半时不能超过10次:idea.space.safe.sms.captcha.mac.half.hour.send.num:{mac} // 同一Mac半小时发送数量 3.5 同一个手机号一小时不超过10次:idea.space.safe.sms.captcha.mobile.1hour.send.num // 同一手机号一小时发送数量 3.2 在一分钟内不能超过120次发送:idea.space.safe.sms.captcha.1minute.send.num // 一分钟发送数量 3.6 一小时内短信验证码发送量不超过600次:idea.space.safe.sms.captcha.24hour.send.num // 1小时发送数量 3.7 24小时内不超过3000次:idea.space.safe.sms.captcha.24hour.send.num // 24小时发送数量
View Source
const ( LoginMacLockNum = 5 // 同一个登录MAC地址错误5次锁定20分钟 LoginMacAccountLockNum = 5 // 同一个登录账户MAC地址错误5次锁定20分钟 )
登录安全配置
View Source
const ( OrmWhereLike = ` Like ?` OrmWhereBetween = ` Between ? And ? ` OrmWhereGT = ` > ?` OrmWhereGTE = ` >= ?` OrmWhereLT = ` > ?` OrmWhereLTE = ` > ?` )
View Source
const (
// CachePrefix 缓存前缀
CachePrefix = `idea.space.`
)
View Source
const (
SmsTemplateVarAlias = `sms.template.var.alias:` // 短信模板变量内容缓存
)
SMS短信服务
View Source
const (
SysConfigKey = `sys.config.group.name:` // 系统业务配置缓存 sys.config.group.name:{group}-{name}或配置组sys.config.group.name:{group}
)
系统业务配置
View Source
const (
SysConfigSmsDriver = `sms_driver` // 短信驱动名
)
业务配置
View Source
const (
SysMapGroup = `sys.map.group` // 系统字典组
)
系统字典
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.