Sample code for 30+ languages & platforms
Visual Basic 6.0

S3 List Buckets using an STS Session Token

See more AWS Security Token Service Examples

This is an example showing how to use an STS session token in an Amazon AWS request. This example will list S3 buckets using a previously obtained session token.

Chilkat Visual Basic 6.0 Downloads

Visual Basic 6.0
Dim success As Long
success = 0

' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

' See Get AWS STS Session Token for sample code to get the session token XML.
Dim xmlToken As New ChilkatXml
success = xmlToken.LoadXmlFile("qa_data/tokens/aws_session_token.xml")
If (success = 0) Then
    Debug.Print xmlToken.LastErrorText
    Exit Sub
End If

Dim rest As New ChilkatRest

' Connect to the Amazon AWS REST server.
Dim bTls As Long
bTls = 1
Dim port As Long
port = 443
Dim bAutoReconnect As Long
bAutoReconnect = 1
success = rest.Connect("s3.amazonaws.com",port,bTls,bAutoReconnect)

' Provide AWS credentials for the REST call.
Dim authAws As New ChilkatAuthAws

' The purpose of this example is to show how to use the temporary AccessKeyId, SecretAccessKey, and SessionToken.
authAws.AccessKey = xmlToken.GetChildContent("GetSessionTokenResult|Credentials|AccessKeyId")
authAws.SecretKey = xmlToken.GetChildContent("GetSessionTokenResult|Credentials|SecretAccessKey")
authAws.ServiceName = "s3"
success = rest.SetAuthAws(authAws)

success = rest.AddQueryParam("X-Amz-Security-Token",xmlToken.GetChildContent("GetSessionTokenResult|Credentials|SessionToken"))

Dim sbResponse As New ChilkatStringBuilder
success = rest.FullRequestNoBodySb("GET","/",sbResponse)
If (success <> 1) Then
    Debug.Print rest.LastErrorText
    Exit Sub
End If

Dim statusCode As Long
statusCode = rest.ResponseStatusCode
Debug.Print "Response status code = " & statusCode

Dim xml As New ChilkatXml
success = xml.LoadSb(sbResponse,1)
Debug.Print xml.GetXml()

If (statusCode <> 200) Then
    Debug.Print "Failed.  See error information in the XML."
    Exit Sub
End If