1package credentials
2
3// Deprecated: Use RamRoleArnCredential in this package instead.
4type StsRoleArnCredential struct {
5	AccessKeyId           string
6	AccessKeySecret       string
7	RoleArn               string
8	RoleSessionName       string
9	RoleSessionExpiration int
10}
11
12type RamRoleArnCredential struct {
13	AccessKeyId           string
14	AccessKeySecret       string
15	RoleArn               string
16	RoleSessionName       string
17	RoleSessionExpiration int
18	Policy                string
19}
20
21// Deprecated: Use RamRoleArnCredential in this package instead.
22func NewStsRoleArnCredential(accessKeyId, accessKeySecret, roleArn, roleSessionName string, roleSessionExpiration int) *StsRoleArnCredential {
23	return &StsRoleArnCredential{
24		AccessKeyId:           accessKeyId,
25		AccessKeySecret:       accessKeySecret,
26		RoleArn:               roleArn,
27		RoleSessionName:       roleSessionName,
28		RoleSessionExpiration: roleSessionExpiration,
29	}
30}
31
32func (oldCred *StsRoleArnCredential) ToRamRoleArnCredential() *RamRoleArnCredential {
33	return &RamRoleArnCredential{
34		AccessKeyId:           oldCred.AccessKeyId,
35		AccessKeySecret:       oldCred.AccessKeySecret,
36		RoleArn:               oldCred.RoleArn,
37		RoleSessionName:       oldCred.RoleSessionName,
38		RoleSessionExpiration: oldCred.RoleSessionExpiration,
39	}
40}
41
42func NewRamRoleArnCredential(accessKeyId, accessKeySecret, roleArn, roleSessionName string, roleSessionExpiration int) *RamRoleArnCredential {
43	return &RamRoleArnCredential{
44		AccessKeyId:           accessKeyId,
45		AccessKeySecret:       accessKeySecret,
46		RoleArn:               roleArn,
47		RoleSessionName:       roleSessionName,
48		RoleSessionExpiration: roleSessionExpiration,
49	}
50}
51
52func NewRamRoleArnWithPolicyCredential(accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string, roleSessionExpiration int) *RamRoleArnCredential {
53	return &RamRoleArnCredential{
54		AccessKeyId:           accessKeyId,
55		AccessKeySecret:       accessKeySecret,
56		RoleArn:               roleArn,
57		RoleSessionName:       roleSessionName,
58		RoleSessionExpiration: roleSessionExpiration,
59		Policy:                policy,
60	}
61}
62