sts_credential.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package credentials
  2. import "github.com/alibabacloud-go/tea/tea"
  3. // StsTokenCredential is a kind of credentials
  4. type StsTokenCredential struct {
  5. AccessKeyId string
  6. AccessKeySecret string
  7. SecurityToken string
  8. }
  9. func newStsTokenCredential(accessKeyId, accessKeySecret, securityToken string) *StsTokenCredential {
  10. return &StsTokenCredential{
  11. AccessKeyId: accessKeyId,
  12. AccessKeySecret: accessKeySecret,
  13. SecurityToken: securityToken,
  14. }
  15. }
  16. // GetAccessKeyId reutrns StsTokenCredential's AccessKeyId
  17. func (s *StsTokenCredential) GetAccessKeyId() (*string, error) {
  18. return tea.String(s.AccessKeyId), nil
  19. }
  20. // GetAccessSecret reutrns StsTokenCredential's AccessKeySecret
  21. func (s *StsTokenCredential) GetAccessKeySecret() (*string, error) {
  22. return tea.String(s.AccessKeySecret), nil
  23. }
  24. // GetSecurityToken reutrns StsTokenCredential's SecurityToken
  25. func (s *StsTokenCredential) GetSecurityToken() (*string, error) {
  26. return tea.String(s.SecurityToken), nil
  27. }
  28. // GetBearerToken is useless StsTokenCredential
  29. func (s *StsTokenCredential) GetBearerToken() *string {
  30. return tea.String("")
  31. }
  32. // GetType reutrns StsTokenCredential's type
  33. func (s *StsTokenCredential) GetType() *string {
  34. return tea.String("sts")
  35. }