Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) AWS Security Token Service (STS) GetSessionTokenSee more AWS Security Token Service ExamplesReturns a set of temporary credentials for an AWS account or IAM user. For more information, see https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html
LOCAL loRest LOCAL lnBTls LOCAL lnPort LOCAL lnBAutoReconnect LOCAL lnSuccess LOCAL loAuthAws LOCAL lcResponseXml LOCAL loXml LOCAL lcGetSessionTokenResponse_xmlns LOCAL lcAccessKeyId LOCAL lcSecretAccessKey LOCAL lcSessionToken LOCAL lcExpiration LOCAL lcRequestId * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Rest') loRest = CreateObject('Chilkat.Rest') * Connect to the Amazon AWS REST server. * such as https://sts.us-west-2.amazonaws.com/ lnBTls = 1 lnPort = 443 lnBAutoReconnect = 1 lnSuccess = loRest.Connect("sts.us-west-2.amazonaws.com",lnPort,lnBTls,lnBAutoReconnect) * Provide AWS credentials for the REST call. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.AuthAws') loAuthAws = CreateObject('Chilkat.AuthAws') loAuthAws.AccessKey = "AWS_ACCESS_KEY" loAuthAws.SecretKey = "AWS_SECRET_KEY" * the region should match our URL above.. * See https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html loAuthAws.Region = "us-west-2" loAuthAws.ServiceName = "sts" loRest.SetAuthAws(loAuthAws) loRest.AddQueryParam("Version","2011-06-15") loRest.AddQueryParam("Action","GetSessionToken") loRest.AddQueryParam("DurationSeconds","3600") lcResponseXml = loRest.FullRequestNoBody("GET","/") IF (loRest.LastMethodSuccess <> 1) THEN ? loRest.LastErrorText RELEASE loRest RELEASE loAuthAws CANCEL ENDIF * A successful response will have a status code equal to 200. IF (loRest.ResponseStatusCode <> 200) THEN ? "response status code = " + STR(loRest.ResponseStatusCode) ? "response status text = " + loRest.ResponseStatusText ? "response header: " + loRest.ResponseHeader ? "response body: " + lcResponseXml RELEASE loRest RELEASE loAuthAws CANCEL ENDIF * Examine the successful XML response (shown below) * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Xml') loXml = CreateObject('Chilkat.Xml') loXml.LoadXml(lcResponseXml) ? loXml.GetXml() * Sample response: * <?xml version="1.0" encoding="utf-8"?> * <GetSessionTokenResponse xmlns="https://sts.amazonaws.com/doc/2011-06-15/"> * <GetSessionTokenResult> * <Credentials> * <AccessKeyId>AS........T4N</AccessKeyId> * <SecretAccessKey>05W........ARPMr</SecretAccessKey> * <SessionToken>IQoJb3J........llpIMI=</SessionToken> * <Expiration>2022-09-07T00:22:51Z</Expiration> * </Credentials> * </GetSessionTokenResult> * <ResponseMetadata> * <RequestId>8bad22cc-1c55-4265-a010-45d139359404</RequestId> * </ResponseMetadata> * </GetSessionTokenResponse> * Sample parse code: lcGetSessionTokenResponse_xmlns = loXml.GetAttrValue("xmlns") lcAccessKeyId = loXml.GetChildContent("GetSessionTokenResult|Credentials|AccessKeyId") lcSecretAccessKey = loXml.GetChildContent("GetSessionTokenResult|Credentials|SecretAccessKey") lcSessionToken = loXml.GetChildContent("GetSessionTokenResult|Credentials|SessionToken") lcExpiration = loXml.GetChildContent("GetSessionTokenResult|Credentials|Expiration") lcRequestId = loXml.GetChildContent("ResponseMetadata|RequestId") * Save the session token XML to a file for use by another Chilkat example.. lnSuccess = loXml.SaveXml("qa_data/tokens/aws_session_token.xml") RELEASE loRest RELEASE loAuthAws RELEASE loXml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.