You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

32 lines
689 B

package sts
type (
Authorization struct {
Expiration string
AccessKeyId string
AccessKeySecret string
SecurityToken string
}
ISys interface {
//roleArn:角色ARN。
AssumeRole(roleArn, roleSessionName string) (auth *Authorization, err error)
}
)
var (
defsys ISys
)
func OnInit(config map[string]interface{}, option ...Option) (err error) {
defsys, err = newSys(newOptions(config, option...))
return
}
func NewSys(option ...Option) (sys ISys, err error) {
sys, err = newSys(newOptionsByOption(option...))
return
}
func AssumeRole(roleArn, roleSessionName string) (auth *Authorization, err error) {
return defsys.AssumeRole(roleArn, roleSessionName)
}