uiamsdk

package
v0.7.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 4, 2021 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var FaceidKycResult = map[string]string{

	"1000:SUCCESS":         "待比对照片与参考数据照片或上传照片对比是同一个人",
	"1000:LIVENESS_FINISH": "活体完成",

	"1001:SUCCESS":                  "尚未进行活体认证",
	"1001:SUCCESS_BACKSIDE_SINGLE":  "只需识别国徽面时识别成功",
	"1001:SUCCESS_FRONTSIDE_SINGLE": "只需识别人像面时识别成功",

	"1002:SUCCESS_ALMOST_FRONTSIDE":        "识别出身份证国徽面没有问题,身份证人像面内容上存在没有识别出来、或者出来的内容存在逻辑问题、识别出来的内容存在质量问题",
	"1002:SUCCESS_ALMOST_BACKSIDE":         "识别出身份证人像面没有问题,身份证国徽面内容上存在没有识别出来、或者出来的内容存在逻辑问题、识别出来的内容存在质量问",
	"1002:SUCCESS_ALMOST_BOTHSIDE":         "识别出身份证人像面和国徽面内容上均存在没有识别出来、或者出来的内容存在逻辑问题、识别出来的内容存在质量问题",
	"1002:SUCCESS_ALMOST_BACKSIDE_SINGLE":  "只需识别国徽面时内容上存在没有识别出来、或者出来的内容存在逻辑问题、识别出来的内容存在质量问题",
	"1002:SUCCESS_ALMOST_FRONTSIDE_SINGLE": "只需识别人像面时内容上存在没有识别出来、或者出来的内容存在逻辑问题、识别出来的内容存在质量问题",
	"2001:NO_IDCARD_FRONTSIDE":             "没有检测到身份证人像面照片",
	"2001:NO_IDCARD_BACKSIDE":              "没有检测到身份证国徽面照片",
	"2001:NO_IDCARD_BOTHSIDE":              "没有检测到身份证人像面和国徽面照片",
	"2001:NO_IDCARD_BACKSIDE_SINGLE":       "只需识别国徽面时没有检测到国徽面照片",
	"2001:NO_IDCARD_FRONTSIDE_SINGLE":      "只需识别人像面时没有检测到人像面照片",
	"2000:PASS_LIVING_NOT_THE_SAME":        "待比对照片与参考数据照片或上传照片对比不是同一个人",
	"3000:NO_ID_CARD_NUMBER":               "无此身份证号",
	"3000:ID_NUMBER_NAME_NOT_MATCH":        "身份证号和姓名不相符",
	"3000:NO_ID_PHOTO":                     "无法获取参考照片",
	"3000:NO_FACE_FOUND":                   "参考照片中找不到人脸",
	"3000:PHOTO_FORMAT_ERROR":              "参考照片格式错误",
	"3000:DATA_SOURCE_ERROR":               "参考数据错误",
	"3100:IDCARD_PHOTO_FRONTSIDE":          "身份证人像面识别错误(可能是拍摄模糊,阴影,暗光)或者有逻辑错误(例如性别和身份证号不匹配)",
	"3100:IDCARD_BACKSIDE_BLURRED":         "身份证国徽面识别错误(可能是拍摄模糊,阴影,暗光)或者有逻辑错误(例如性别和身份证号不匹配)",
	"3100:NO_FACE_FOUND_IDCARD":            "身份证人像面找不到人脸",
	"3100:IDCARD_PHOTO_NOTFRONTSIDE":       "非身份证人像面",
	"3100:IDCARD_PHOTO_NOTBACKSIDE":        "非身份证国徽面",
	"3100:IDCARD_PHOTO_INVALID_SIZE":       "身份证图片超过尺寸限制",
	"3200:FAIL_OCR_FAKE_IDCARD":            "假证",

	"4100:FAIL_LIVING_FACE_ATTACK":   "云端活体验证失败",
	"4100:CHANGE_FACE_ATTACK":        "活体验证视频中发生了换脸攻击(视频中不是同一个人)",
	"4100:VIDEO_LACK_FRAMES":         "获取到的活体数据故障,请换一台手机重试",
	"4100:FAIL_EYES_CLOSE_DETECTION": "未通过闭眼检测,活体失败",
	"4200:NO_FACE_FOUND":             "活体验证视频中没有检测到人脸",
	"4200:FACE_QUALITY_TOO_LOW":      "活体验证视频中质量太差",
	"4200:INVALID_VIDEO_DURATION":    "活体验证视频中长度不符合要求(2s~20s)",
	"4200:VIDEO_TOO_LARGE":           "活体验证视频过大",
	"4200:SR_ERROR":                  "活体验证视频中,用户读数语音不符合要求",
	"4200:NOT_SYNCHRONIZED":          "活体验证视频中,用户读数唇语不符合要求",
	"4200:NO_AUDIO":                  "活体验证视频无声音",
	"4200:VIDEO_FORMAT_UNSUPPORTED":  "活体验证视频格式无法识别",
	"4200:LIP_VOICE_NOT_SYNC":        "活体验证视频中语音唇语不同步",
	"4200:VIDEO_OK":                  "活体验证视频可用",
	"4200:VIDEO_MANY_TIMES":          "活体验证视频上传超过阈值(默认为3,get_biz_token接口中liveness_retry_count参数可以设置)",
	"4200:VIDEO_INTERNAL_ERROR":      "活体验证内部错误",
	"4200:BIZ_TOKEN_DENIED":          "传入的 biz_token 不符合要求",
	"4200:AUTHENTICATION_FAIL":       "鉴权失败",
	"4200:MOBILE_PHONE_NOT_SUPPORT":  "手机在不支持列表里",
	"4200:SDK_TOO_OLD":               "SDK版本过旧,已经不被支持",
	"4200:MOBILE_PHONE_NO_AUTHORITY": "没有权限(运动传感器、存储、相机)",
	"4200:USER_CANCELLATION":         "用户活体失败,可能原因:用户取消了",
	"4200:USER_TIMEOUT":              "用户活体失败,可能原因:验证过程超时",
	"4200:VERIFICATION_FAILURE":      "用户活体失败,可能原因:验证失败",
	"4200:UNDETECTED_FACE":           "用户活体失败,可能原因:未检测到人脸",
	"4200:ACTION_ERROR":              "用户活体失败,可能原因:用户动作错误;",
	"9000:LIVING_NOT_START":          "活体验证没有开始",
	"9000:LIVING_IN_PROGRESS":        "正在进行验证",
	"9000:LIVING_OVERTIME":           "操作超时,由于用户在长时间没有进行操作",

	"5000:API_KEY_BE_DISCONTINUED":      "api_key被停用",
	"5000:IP_NOT_ALLOWED":               "不允许访问的IP",
	"5000:NON_ENTERPRISE_CERTIFICATION": "客户未进行企业认证",
	"5000:ACCOUNT_DISCONTINUED":         "用户帐号已停用",
	"5000:EXPIRED_SIGN":                 "签名过期",
	"5000:INVALID_SIGN":                 "无效的签名",
	"5000:REPLAY_ATTACK":                "重放攻击,单次有效的签名被多次使用",
	"5000:BALANCE_NOT_ENOUGH":           "余额不足",
	"5000:MORE_RETRY_TIMES":             "超过重试次数",
	"5000:ACCOUNT_DISABLED":             "账户已停用",

	"6000:NO_NETWORK_PERMISSION":  "没有网络权限",
	"6000:NO_CAMERA_PERMISSION":   "没有相机权限",
	"6000:DEVICE_NOT_SUPPORT":     "无法启动相机,请确认摄像头功能完好",
	"6000:ILLEGAL_PARAMETER":      "传入参数不合法",
	"6000:INVALID_BUNDLE_ID":      "信息验证失败,请重启程序或设备后重试",
	"6000:USER_CANCEL":            "用户主动退出流程",
	"6000:NETWORK_ERROR":          "连不上互联网,请连接上互联网后重试",
	"6000:FACE_INIT_FAIL":         "无法启动人脸识别,请稍后重试",
	"6000:LIVENESS_DETECT_FAILED": "活体检测不通过",
	"6000:NO_SENSOR_PERMISSION":   "无法读取运动数据的权限,请开启权限后重试",
	"6000:INIT_FAILED":            "初始化失败",
}

FaceidKycResult FaceidKycResult

Functions

This section is empty.

Types

type AppError

type AppError struct {
	ErrorCode int    `json:"code"`
	ErrorMsg  string `json:"message"`
}

AppError AppError

func NewAppError

func NewAppError(msg string) *AppError

NewAppError NewAppError

func (AppError) Error

func (err AppError) Error() string

Error Error

type Attribute

type Attribute map[string]interface{}

Attribute Attribute

func (*Attribute) Scan

func (attr *Attribute) Scan(v interface{}) error

Scan Scan

func (Attribute) Value

func (attr Attribute) Value() (driver.Value, error)

Value Value

type AuthSchemeEnum

type AuthSchemeEnum string

AuthSchemeEnum 枚举

const (
	AuthSchemeEnumBasic  AuthSchemeEnum = "basic"
	AuthSchemeEnumDigest AuthSchemeEnum = "digest"
	AuthSchemeEnumJWTHS  AuthSchemeEnum = "jwths"
	AuthSchemeEnumJWTRS  AuthSchemeEnum = "jwtrs"
	AuthSchemeEnumJWTES  AuthSchemeEnum = "jwtes"
	AuthSchemeEnumSAML   AuthSchemeEnum = "saml"
	AuthSchemeEnumCAS    AuthSchemeEnum = "cas"
	AuthSchemeEnumOIDC   AuthSchemeEnum = "oidc"
	AuthSchemeEnumLDAP   AuthSchemeEnum = "ldap"
)

func (AuthSchemeEnum) String

func (e AuthSchemeEnum) String() string

type AuthTypeEnum

type AuthTypeEnum string

AuthTypeEnum 枚举

const (
	// AuthTypeEnumUser user
	AuthTypeEnumUser AuthTypeEnum = "user"
	// AuthTypeEnumApp app
	AuthTypeEnumApp AuthTypeEnum = "app"
	// AuthTypeEnumAppuser appuser
	AuthTypeEnumAppuser AuthTypeEnum = "appuser"
	// AuthTypeEnumSystem system
	AuthTypeEnumSystem AuthTypeEnum = "system"
)

func (AuthTypeEnum) String

func (e AuthTypeEnum) String() string

type BasePageResponse

type BasePageResponse struct {
	Items      []interface{} `json:"data"`
	Pagination *Pagination   `json:"pagination"`
}

BasePageResponse BasePageResponse

type CaptchaTypeEnum

type CaptchaTypeEnum string

CaptchaTypeEnum CaptchaTypeEnum

const (
	// CaptchaTypeEnumLogin offer
	CaptchaTypeEnumLogin CaptchaTypeEnum = "login"
)

func NewCaptchaTypeEnum

func NewCaptchaTypeEnum(captchaCodeTypeEnum string) CaptchaTypeEnum

NewCaptchaTypeEnum 构造函数

func (CaptchaTypeEnum) String

func (e CaptchaTypeEnum) String() string

type ConnectProviderEnum added in v0.7.0

type ConnectProviderEnum string

ConnectProviderEnum 枚举

const (
	ConnectProviderEnumGoogle    ConnectProviderEnum = "google"
	ConnectProviderEnumMicrosoft ConnectProviderEnum = "microsoft"
	ConnectProviderEnumFacebook  ConnectProviderEnum = "facebook"
	ConnectProviderEnumTwitter   ConnectProviderEnum = "twitter"
	ConnectProviderEnumWechat    ConnectProviderEnum = "wechat"
	ConnectProviderEnumQQ        ConnectProviderEnum = "qq"
	ConnectProviderEnumAlipay    ConnectProviderEnum = "alipay"
	ConnectProviderEnumDingtalk  ConnectProviderEnum = "dingtalk"
	ConnectProviderEnumWeibo     ConnectProviderEnum = "weibo"
	ConnectProviderEnumLADP      ConnectProviderEnum = "ladp"
)

func NewConnectProviderEnum added in v0.7.0

func NewConnectProviderEnum(provider string) (ConnectProviderEnum, error)

NewConnectProviderEnum 构造函数

func (ConnectProviderEnum) String added in v0.7.0

func (e ConnectProviderEnum) String() string

type CountryEnum

type CountryEnum string

CountryEnum 国家代码 枚举

const (
	// CountryEnumCN 中国
	CountryEnumCN CountryEnum = "cn"
)

func NewCountryEnum

func NewCountryEnum(enum string) CountryEnum

NewCountryEnum NewCountryEnum

type GenderEnum

type GenderEnum string

GenderEnum 性别 枚举

const (
	// GenderEnumMale 男
	GenderEnumMale GenderEnum = "male"
	// GenderEnumFemale 女
	GenderEnumFemale GenderEnum = "female"
)

func NewGenderEnum

func NewGenderEnum(enum string) GenderEnum

NewGenderEnum NewGenderEnum

func (GenderEnum) String

func (e GenderEnum) String() string

type IDTypeEnum

type IDTypeEnum string

IDTypeEnum 证件类型 枚举

const (
	// IDTypeEnumIDCard 身份证
	IDTypeEnumIDCard IDTypeEnum = "idcard"
	// IDTypeEnumDriverLicense 驾照
	IDTypeEnumDriverLicense IDTypeEnum = "driverlicense"
	// IDTypeEnumPassport 护照
	IDTypeEnumPassport IDTypeEnum = "passport"
	// IDTypeEnumPermanentResident 户口本
	IDTypeEnumPermanentResident IDTypeEnum = "permanentresident"
	// IDTypeEnumForeign 外国人永久居留证
	IDTypeEnumForeign IDTypeEnum = "foreign"
	// IDTypeEnumArmymanCard 军人证
	IDTypeEnumArmymanCard IDTypeEnum = "armymancard"
	// IDTypeEnumPoliceCard 武警证
	IDTypeEnumPoliceCard IDTypeEnum = "policecard"
	// IDTypeEnumCachet 公章
	IDTypeEnumCachet IDTypeEnum = "cachet"
	// IDTypeEnumBusinessLicense 工商营业执照
	IDTypeEnumBusinessLicense IDTypeEnum = "businesslicense"
	// IDTypeEnumCorporationID 法人代码证
	IDTypeEnumCorporationID IDTypeEnum = "corporationid"
	// IDTypeEnumStudentCard 学生证
	IDTypeEnumStudentCard IDTypeEnum = "studentcard"
	// IDTypeEnumSoldierCard 士兵证
	IDTypeEnumSoldierCard IDTypeEnum = "soldiercard"
	// IDTypeEnumGAJMLW 港澳居民来往内地通行证
	IDTypeEnumGAJMLW IDTypeEnum = "gajmlw"
	// IDTypeEnumTWJMLW 台湾居民来往大陆通行证
	IDTypeEnumTWJMLW IDTypeEnum = "twjmlw"
)

func NewIDTypeEnum

func NewIDTypeEnum(enum string) IDTypeEnum

NewIDTypeEnum NewCountryEnum

type IdentityStatusEnum

type IdentityStatusEnum string

IdentityStatusEnum 枚举

const (
	IdentityStatusEnumInit     IdentityStatusEnum = "init"
	IdentityStatusEnumPending  IdentityStatusEnum = "pending"
	IdentityStatusEnumNormal   IdentityStatusEnum = "normal"
	IdentityStatusEnumLocked   IdentityStatusEnum = "locked"
	IdentityStatusEnumDisabled IdentityStatusEnum = "disabled"
)

func (IdentityStatusEnum) String

func (e IdentityStatusEnum) String() string

type IdentityTypeEnum

type IdentityTypeEnum string

IdentityTypeEnum 枚举

const (
	IdentityTypeEnumStd   IdentityTypeEnum = "std"
	IdentityTypeEnumAdmin IdentityTypeEnum = "admin"
	IdentityTypeEnumSys   IdentityTypeEnum = "sys"
)

func (IdentityTypeEnum) String

func (e IdentityTypeEnum) String() string

type JWTPayload

type JWTPayload struct {
	jwtgo.StandardClaims

	UID           string         `json:"uid,omitempty"`
	Mode          string         `json:"mode,omitempty"`
	Scheme        AuthSchemeEnum `json:"scheme,omitempty"`
	OAuthProvider string         `json:"oap,omitempty"` //oap: OAuth Provider
	SessionID     string         `json:"sid,omitempty"`
	Sign          string         `json:"sig,omitempty"`
	SignAlg       string         `json:"sal,omitempty"`
	Extra         string         `json:"extra,omitempty"` // 额外的字段,可以存放 json 等非标数据
}

JWTPayload RealmJWTPayload

type KycLevelEnum

type KycLevelEnum int

KycLevelEnum KycLevel

const (
	// KycLevelEnumInit 从未开始做过
	KycLevelEnumInit KycLevelEnum = 0
	// KycLevelEnumInitL1 尝试做 L1,进行中/失败
	KycLevelEnumInitL1 KycLevelEnum = 1
	// KycLevelEnumInitL2 尝试做 L2,进行中/失败
	KycLevelEnumInitL2 KycLevelEnum = 2
	// KycLevelEnumInitL3 尝试做 L3,进行中/失败
	KycLevelEnumInitL3 KycLevelEnum = 3
	// KycLevelEnumID L2 已通过,[身份证号码]
	KycLevelEnumID KycLevelEnum = 11
	// KycLevelEnumIDL2 L1 已通过,尝试做 L2,进行中/失败
	KycLevelEnumIDL2 KycLevelEnum = 12
	// KycLevelEnumIDL3 L1 已通过,尝试做 L3,进行中/失败
	KycLevelEnumIDL3 KycLevelEnum = 13
	// KycLevelEnumMac L2 已通过,[Machine Aided Cognition]
	KycLevelEnumMac KycLevelEnum = 22
	// KycLevelEnumMacL3 L2 已通过,尝试做 L3,进行中/失败
	KycLevelEnumMacL3 KycLevelEnum = 23
	// KycLevelEnumHuman L3 已通过,[活体]
	KycLevelEnumHuman KycLevelEnum = 33
	// KycLevelEnumUnkonwn KycLevelEnumUnkonwn
	KycLevelEnumUnkonwn KycLevelEnum = -1
)

func NewKycLevelEnum

func NewKycLevelEnum(enum int) KycLevelEnum

NewKycLevelEnum NewKycLevelEnum

type KycStatusEnum

type KycStatusEnum string

KycStatusEnum 枚举

const (
	// KycStatusEnumProcessing 处理中
	KycStatusEnumProcessing KycStatusEnum = "processing"
	// KycStatusEnumRejected rejected
	KycStatusEnumRejected KycStatusEnum = "rejected"
	// KycStatusEnumApproved approved
	KycStatusEnumApproved KycStatusEnum = "approved"
	// KycStatusEnumUnkonwn unkonwn
	KycStatusEnumUnkonwn KycStatusEnum = "unkonwn"
)

func NewKycStatusEnum

func NewKycStatusEnum(enum string) KycStatusEnum

NewKycStatusEnum NewKycStatusEnum

func (KycStatusEnum) String

func (e KycStatusEnum) String() string

type MerchantStatusEnum

type MerchantStatusEnum string

MerchantStatusEnum 枚举

const (
	// MerchantStatusEnumNormal 正常
	MerchantStatusEnumNormal MerchantStatusEnum = "normal"
	// MerchantStatusEnumDisabled 下架
	MerchantStatusEnumDisabled MerchantStatusEnum = "disabled"
)

func (MerchantStatusEnum) String

func (e MerchantStatusEnum) String() string

type MerchantTypeEnum added in v0.5.0

type MerchantTypeEnum string

IdentityTypeEnum 枚举

const (
	// MerchantTypeEnumPersonal 正常注册用户
	MerchantTypeEnumPersonal MerchantTypeEnum = "personal"
	// MerchantTypeEnumCompany 系统调用使用
	MerchantTypeEnumCompany MerchantTypeEnum = "copmpany"
)

func (MerchantTypeEnum) String added in v0.5.0

func (e MerchantTypeEnum) String() string

type MixinAuthError

type MixinAuthError struct {
	Status      int32  `json:"status"`
	Code        int32  `json:"code"`
	Description string `json:"description"`
}

MixinAuthError MixinAuthError

type MixinCredential

type MixinCredential struct {
	Type           MixinCredentialTypeEnum `json:"type"`
	EdPrivKey      string                  `json:"ed_priv_key"`       // edkey
	EdServerPubKey string                  `json:"ed_server_pub_key"` // edkey
	ClientID       string                  `json:"client_id"`         // edkey
	AuthID         string                  `json:"auth_id"`           // edkey
	Scope          string                  `json:"scope"`             // token & edkey
	AccessToken    string                  `json:"access_token"`      // token
}

MixinCredential MixinCredential

type MixinCredentialTypeEnum

type MixinCredentialTypeEnum string

MixinCredentialTypeEnum 枚举

const (
	MixinCredentialTypeEnumEdkey MixinCredentialTypeEnum = "edkey"
	MixinCredentialTypeEnumToken MixinCredentialTypeEnum = "token"
)

func (MixinCredentialTypeEnum) String

func (e MixinCredentialTypeEnum) String() string

type MixinUserDataProfile

type MixinUserDataProfile struct {
	Data  *MixinUserProfile `json:"data"`
	Error *MixinAuthError   `json:"error"`
}

MixinUserDataProfile MixinUserDataProfile

type MixinUserProfile

type MixinUserProfile struct {
	UserID     string `json:"user_id"`
	UiamNumber string `json:"uiam_number"`
	FullName   string `json:"full_name,omitempty"`
	AvatarURL  string `json:"avatar_url,omitempty"`
	CreatedAt  string `json:"created_at,omitempty"`
	Phone      string `json:"phone,omitempty"`
}

MixinUserProfile messenger user entity

type Pagination

type Pagination struct {
	Offset uint64 `json:"offset,omitempty"`
	Page   uint64 `json:"page,omitempty"`
	Limit  uint64 `json:"limit,omitempty"`
	Total  uint64 `json:"total,omitempty"`
	Pages  uint64 `json:"pages,omitempty"`
}

Pagination Pagination

func NewOffsetPagination

func NewOffsetPagination(offset, limit, total uint64) *Pagination

NewOffsetPagination NewPagination

func NewPagePagination

func NewPagePagination(page, limit, total uint64) *Pagination

NewPagePagination NewPagination

type RealmAuthzModelEnum added in v0.7.2

type RealmAuthzModelEnum string

RealmStatusEnum 枚举

const (
	RealmAuthzModelEnumRealm      RealmAuthzModelEnum = "realm"
	RealmAuthzModelEnumUser       RealmAuthzModelEnum = "user"
	RealmAuthzModelEnumUserDevice RealmAuthzModelEnum = "device"
)

func (RealmAuthzModelEnum) String added in v0.7.2

func (e RealmAuthzModelEnum) String() string

type RealmStatusEnum

type RealmStatusEnum string

RealmStatusEnum 枚举

const (
	// RealmStatusEnumNormal 正常
	RealmStatusEnumNormal RealmStatusEnum = "normal"
	// RealmStatusEnumDisabled 下架
	RealmStatusEnumDisabled RealmStatusEnum = "disabled"
)

func (RealmStatusEnum) String

func (e RealmStatusEnum) String() string

type Token

type Token struct {
	RealmID    string         `json:"realm_id,omitempty"`
	IdentityID string         `json:"identity_id,omitempty"`
	Type       AuthTypeEnum   `json:"type,omitempty"`
	Scheme     AuthSchemeEnum `json:"scheme,omitempty"`
	Provider   string         `json:"oap,omitempty"`
	Key        string         `json:"sid,omitempty"`
	ExpriedAt  *time.Time     `json:"expried_at,omitempty"`
	Token      string         `json:"token,omitempty"`
}

Token profile

type WechatAuth

type WechatAuth struct {
	IdentityID string            `json:"identity_id"`
	RealmID    string            `json:"realm_id"`
	Provider   string            `json:"provider"`
	OauthID    string            `json:"oauth_id"`
	UnionID    string            `json:"union_id"`
	UserName   string            `json:"user_name"`
	Credential *WechatCredential `json:"credential"`
	CreatedAt  time.Time         `json:"created_at"`
	UpdatedAt  time.Time         `json:"updated_at"`
}

WechatAuth WechatAuth

type WechatCredential

type WechatCredential struct {
	AccessToken  string `json:"access_token"`
	Scope        string `json:"scope"`
	ExpiresIn    int    `json:"expires_in,omitempty"`
	RefreshToken string `json:"refresh_token,omitempty"`
	SessionKey   string `json:"session_key,omitempty"` // Weapp 加密数据用
}

WechatCredential WechatCredential

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL