Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthConfig ¶
type AuthConfig struct { Connect ConnectConf `json:"connect" form:"connect"` //原串连接配置 Required []string `json:"required" form:"required"` //必要参数,签名验证时会检查参数是否存在,可空 Alias map[string]string `json:"alias" form:"alias" valid:"required"` //参数别名,其中用于标记系统euid的别名必须配置 Decrypt []string `json:"decrypt" form:"decrypt"` //需要解密数据,可空 CheckTimestamp bool `json:"checkTimestamp" form:"checkTimestamp"` //是否校验时间戳 Params map[string]*Cipher `json:"params" form:"params"` //加密参数 }
AuthConfig 认证配置
func GetParams ¶
func GetParams(data map[string]interface{}) (conf *AuthConfig, params map[string]interface{}, err error)
GetParams 获取参数配置
func (*AuthConfig) Check ¶
func (a *AuthConfig) Check(input map[string]interface{}, authType int) (euid, signName, encodeKey string, err error)
Check 检查参数(必须参数,参数别名,时间戳)并获取uid
func (*AuthConfig) GetEncryptData ¶
func (a *AuthConfig) GetEncryptData(input map[string]interface{}) map[string]string
GetEncryptData 获取数据中的加密数据
type ConnectConf ¶
type ConnectConf struct { KV string `json:"kv" form:"kv"` //签名原串中参数键与值连接符,可空 Chain string `json:"chain" form:"chain"` //签名原串中键值对之间连接符,可空 Sort string `json:"sort" form:"sort"` //签名原串排序方式,可空(默认data) Fields string `json:"fields" form:"fields"` //签名原串字段排序顺序配置,仅static模式下使用,键名间用|隔开 Secret SecretConnect `json:"secret" form:"secret"` }
ConnectConf 原串连接配置
func (*ConnectConf) GetSortFields ¶
func (c *ConnectConf) GetSortFields() []string
GetSortFields 获取排序字段名数组
func (*ConnectConf) GetSortFieldsLen ¶
func (c *ConnectConf) GetSortFieldsLen() int
GetSortFieldsLen 获取排序字段名数组长度
type SecretConnect ¶
type SecretConnect struct { Name string `json:"name" form:"name"` //secret的键名称,可为空(如果密钥也要进行排序,默认为:secret) Mode string `json:"mode" form:"mode"` //secret连接方式。排序方式不是all时有效,值有head,tail, headTail KV string `json:"kv" form:"kv"` //secret与数据key,value的连接方式。未指定时使用connect.kv的连接方式 Chain string `json:"chain" form:"chain"` //secret与数据的连接方式。未指定时使用connect.chain的连接方式 }
Click to show internal directories.
Click to hide internal directories.