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
(Tcl) AWS KMS List KeysSee more AWS KMS ExamplesGets a list of all KMS keys in the caller's AWS account and Region. For more information, see https://docs.aws.amazon.com/kms/latest/APIReference/API_ListKeys.html
load ./chilkat.dll # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set rest [new_CkRest] # Connect to the Amazon AWS REST server. # Make sure to use the region that is correct for you. # such as https://kms.us-west-2.amazonaws.com/ set bTls 1 set port 443 set bAutoReconnect 1 set success [CkRest_Connect $rest "kms.us-west-2.amazonaws.com" $port $bTls $bAutoReconnect] # Provide AWS credentials for the REST call. set authAws [new_CkAuthAws] CkAuthAws_put_AccessKey $authAws "AWS_ACCESS_KEY" CkAuthAws_put_SecretKey $authAws "AWS_SECRET_KEY" # the region should match our URL above.. CkAuthAws_put_Region $authAws "us-west-2" CkAuthAws_put_ServiceName $authAws "kms" CkRest_SetAuthAws $rest $authAws CkRest_AddHeader $rest "X-Amz-Target" "TrentService.ListKeys" CkRest_AddHeader $rest "Content-Type" "application/x-amz-json-1.1" set strJson [CkRest_fullRequestString $rest "POST" "/" "{}"] if {[CkRest_get_LastMethodSuccess $rest] != 1} then { puts [CkRest_lastErrorText $rest] delete_CkRest $rest delete_CkAuthAws $authAws exit } # A successful response will have a status code equal to 200. if {[CkRest_get_ResponseStatusCode $rest] != 200} then { puts "response status code = [CkRest_get_ResponseStatusCode $rest]" puts "response status text = [CkRest_responseStatusText $rest]" puts "response header: [CkRest_responseHeader $rest]" puts "response body: $strJson" delete_CkRest $rest delete_CkAuthAws $authAws exit } # Examine the successful JSON response (shown below) set json [new_CkJsonObject] CkJsonObject_Load $json $strJson CkJsonObject_put_EmitCompact $json 0 puts [CkJsonObject_emit $json] # Sample output: # { # "KeyCount": 4, # "Keys": [ # { # "KeyArn": "arn:aws:kms:us-west-2:954491834127:key/082f8520-7afc-4a09-b703-89b7243072e5", # "KeyId": "082f8520-7afc-4a09-b703-89b7243072e5" # }, # { # "KeyArn": "arn:aws:kms:us-west-2:954491834127:key/17432483-ff08-4950-93d3-f46ebb5e17d1", # "KeyId": "17432483-ff08-4950-93d3-f46ebb5e17d1" # }, # { # "KeyArn": "arn:aws:kms:us-west-2:954491834127:key/1b0e5b3c-0675-4510-adb6-a75b40a93da0", # "KeyId": "1b0e5b3c-0675-4510-adb6-a75b40a93da0" # }, # { # "KeyArn": "arn:aws:kms:us-west-2:954491834127:key/265e3993-428b-4581-9466-b1030a53062f", # "KeyId": "265e3993-428b-4581-9466-b1030a53062f" # }, # ], # "Truncated": false # } # Use this online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON set KeyCount [CkJsonObject_IntOf $json "KeyCount"] set Truncated [CkJsonObject_BoolOf $json "Truncated"] set i 0 set count_i [CkJsonObject_SizeOfArray $json "Keys"] while {$i < $count_i} { CkJsonObject_put_I $json $i set KeyArn [CkJsonObject_stringOf $json "Keys[i].KeyArn"] set KeyId [CkJsonObject_stringOf $json "Keys[i].KeyId"] set i [expr $i + 1] } delete_CkRest $rest delete_CkAuthAws $authAws delete_CkJsonObject $json |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.