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
(Unicode C++) 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
#include <CkRestW.h> #include <CkAuthAwsW.h> #include <CkJsonObjectW.h> void ChilkatSample(void) { // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. CkRestW rest; // 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/ bool bTls = true; int port = 443; bool bAutoReconnect = true; bool success = rest.Connect(L"kms.us-west-2.amazonaws.com",port,bTls,bAutoReconnect); // Provide AWS credentials for the REST call. CkAuthAwsW authAws; authAws.put_AccessKey(L"AWS_ACCESS_KEY"); authAws.put_SecretKey(L"AWS_SECRET_KEY"); // the region should match our URL above.. authAws.put_Region(L"us-west-2"); authAws.put_ServiceName(L"kms"); rest.SetAuthAws(authAws); rest.AddHeader(L"X-Amz-Target",L"TrentService.ListKeys"); rest.AddHeader(L"Content-Type",L"application/x-amz-json-1.1"); const wchar_t *strJson = rest.fullRequestString(L"POST",L"/",L"{}"); if (rest.get_LastMethodSuccess() != true) { wprintf(L"%s\n",rest.lastErrorText()); return; } // A successful response will have a status code equal to 200. if (rest.get_ResponseStatusCode() != 200) { wprintf(L"response status code = %d\n",rest.get_ResponseStatusCode()); wprintf(L"response status text = %s\n",rest.responseStatusText()); wprintf(L"response header: %s\n",rest.responseHeader()); wprintf(L"response body: %s\n",strJson); return; } // Examine the successful JSON response (shown below) CkJsonObjectW json; json.Load(strJson); json.put_EmitCompact(false); wprintf(L"%s\n",json.emit()); // 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 const wchar_t *KeyArn = 0; const wchar_t *KeyId = 0; int KeyCount = json.IntOf(L"KeyCount"); bool Truncated = json.BoolOf(L"Truncated"); int i = 0; int count_i = json.SizeOfArray(L"Keys"); while (i < count_i) { json.put_I(i); KeyArn = json.stringOf(L"Keys[i].KeyArn"); KeyId = json.stringOf(L"Keys[i].KeyId"); i = i + 1; } } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.