Skip to content

Instantly share code, notes, and snippets.

@musabmasood
Created December 8, 2022 05:55
Show Gist options
  • Save musabmasood/f6b5ca244a6b6094180be609797d17f1 to your computer and use it in GitHub Desktop.
Save musabmasood/f6b5ca244a6b6094180be609797d17f1 to your computer and use it in GitHub Desktop.
sts session assume
module musabmasood.com
go 1.17
require github.com/aws/aws-sdk-go v1.44.21
require github.com/jmespath/go-jmespath v0.4.0 // indirect
// main
package main
import (
"fmt"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/sts"
)
func main() {
sess := session.Must(session.NewSession())
fmt.Println(sess)
stsClient := sts.New(sess)
fmt.Println(stsClient)
roleArn := "xxx"
roleSessionName := "MyTestSession"
input := &sts.AssumeRoleInput{
RoleArn: &roleArn,
RoleSessionName: &roleSessionName,
}
output, err := stsClient.AssumeRole(input)
if err != nil {
fmt.Println("Error happened!")
fmt.Println(err)
} else {
fmt.Println(output.Credentials.AccessKeyId)
}
fmt.Println(output)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment