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
(Perl) 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
use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $rest = chilkat::CkRest->new(); # Connect to the Amazon AWS REST server. # such as https://sts.us-west-2.amazonaws.com/ $bTls = 1; $port = 443; $bAutoReconnect = 1; $success = $rest->Connect("sts.us-west-2.amazonaws.com",$port,$bTls,$bAutoReconnect); # Provide AWS credentials for the REST call. $authAws = chilkat::CkAuthAws->new(); $authAws->put_AccessKey("AWS_ACCESS_KEY"); $authAws->put_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 $authAws->put_Region("us-west-2"); $authAws->put_ServiceName("sts"); $rest->SetAuthAws($authAws); $rest->AddQueryParam("Version","2011-06-15"); $rest->AddQueryParam("Action","GetSessionToken"); $rest->AddQueryParam("DurationSeconds","3600"); $responseXml = $rest->fullRequestNoBody("GET","/"); if ($rest->get_LastMethodSuccess() != 1) { print $rest->lastErrorText() . "\r\n"; exit; } # A successful response will have a status code equal to 200. if ($rest->get_ResponseStatusCode() != 200) { print "response status code = " . $rest->get_ResponseStatusCode() . "\r\n"; print "response status text = " . $rest->responseStatusText() . "\r\n"; print "response header: " . $rest->responseHeader() . "\r\n"; print "response body: " . $responseXml . "\r\n"; exit; } # Examine the successful XML response (shown below) $xml = chilkat::CkXml->new(); $xml->LoadXml($responseXml); print $xml->getXml() . "\r\n"; # 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: $GetSessionTokenResponse_xmlns = $xml->getAttrValue("xmlns"); $AccessKeyId = $xml->getChildContent("GetSessionTokenResult|Credentials|AccessKeyId"); $SecretAccessKey = $xml->getChildContent("GetSessionTokenResult|Credentials|SecretAccessKey"); $SessionToken = $xml->getChildContent("GetSessionTokenResult|Credentials|SessionToken"); $Expiration = $xml->getChildContent("GetSessionTokenResult|Credentials|Expiration"); $RequestId = $xml->getChildContent("ResponseMetadata|RequestId"); # Save the session token XML to a file for use by another Chilkat example.. $success = $xml->SaveXml("qa_data/tokens/aws_session_token.xml"); |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.