DataFlex
DataFlex
AWS Secrets Manager - List Secrets
See more AWS Secrets Manager Examples
Lists the secrets that are stored by Secrets Manager in the AWS account. Lists the secrets that are stored by Secrets Manager in the AWS account.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoRest
Boolean iBTls
Integer iPort
Boolean iBAutoReconnect
Variant vAuthAws
Handle hoAuthAws
String sStrResponse
Integer iRespStatusCode
Handle hoJResp
String sARN
String sDescription
String sLastChangedDate
String sName
String sStrVal
Variant vJson2
Handle hoJson2
Variant vJarr
Handle hoJarr
Integer i
Integer iCount_i
Integer iCount
Integer j
String sVersionName
String sStage
String sTemp1
Boolean bTemp1
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Sends the following sample request.
// Note: Chilkat will automatically add Content-Length, X-Amz-Date, Accept-Encoding, and Authorization
// POST / HTTP/1.1
// Host: secretsmanager.region.domain
// Accept-Encoding: identity
// X-Amz-Target: secretsmanager.ListSecrets
// Content-Type: application/x-amz-json-1.1
// X-Amz-Date: <date>
// Authorization: AWS4-HMAC-SHA256 Credential=<credentials>,SignedHeaders=<headers>, Signature=<signature>
// Content-Length: <payload-size-bytes>
//
// {}
Get Create (RefClass(cComChilkatRest)) To hoRest
If (Not(IsComObjectCreated(hoRest))) Begin
Send CreateComObject of hoRest
End
// Connect to the Amazon AWS REST server.
// such as https://secretsmanager.us-west-2.amazonaws.com/
Move True To iBTls
Move 443 To iPort
Move True To iBAutoReconnect
Get ComConnect Of hoRest "secretsmanager.us-west-2.amazonaws.com" iPort iBTls iBAutoReconnect To iSuccess
// Provide AWS credentials for the REST call.
Get Create (RefClass(cComChilkatAuthAws)) To hoAuthAws
If (Not(IsComObjectCreated(hoAuthAws))) Begin
Send CreateComObject of hoAuthAws
End
Set ComAccessKey Of hoAuthAws To "AWS_ACCESS_KEY"
Set ComSecretKey Of hoAuthAws To "AWS_SECRET_KEY"
// the region should match our URL above..
Set ComRegion Of hoAuthAws To "us-west-2"
Set ComServiceName Of hoAuthAws To "secretsmanager"
Get pvComObject of hoAuthAws to vAuthAws
Get ComSetAuthAws Of hoRest vAuthAws To iSuccess
Get ComAddHeader Of hoRest "Content-Type" "application/x-amz-json-1.1" To iSuccess
Get ComAddHeader Of hoRest "X-Amz-Target" "secretsmanager.ListSecrets" To iSuccess
Get ComFullRequestString Of hoRest "POST" "/" "{}" To sStrResponse
Get ComLastMethodSuccess Of hoRest To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComResponseStatusCode Of hoRest To iRespStatusCode
Showln "response status code = " iRespStatusCode
Get Create (RefClass(cComChilkatJsonObject)) To hoJResp
If (Not(IsComObjectCreated(hoJResp))) Begin
Send CreateComObject of hoJResp
End
Set ComEmitCompact Of hoJResp To False
Get ComLoad Of hoJResp sStrResponse To iSuccess
If (iRespStatusCode >= 400) Begin
Showln "Response Status Code = " iRespStatusCode
Showln "Response Header:"
Get ComResponseHeader Of hoRest To sTemp1
Showln sTemp1
Showln "Response Body:"
Get ComEmit Of hoJResp To sTemp1
Showln sTemp1
Procedure_Return
End
Showln "Response Body:"
Get ComEmit Of hoJResp To sTemp1
Showln sTemp1
// Sample response body:
// {
// "SecretList":[
// {
// "ARN":"arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3",
// "Description":"My test database secret",
// "LastChangedDate":1.523477145729E9,
// "Name":"MyTestDatabaseSecret",
// "SecretVersionsToStages":{
// "EXAMPLE2-90ab-cdef-fedc-ba987EXAMPLE":["AWSCURRENT"]
// }
// },
// {
// "ARN":"arn:aws:secretsmanager:us-west-2:123456789012:secret:AnotherDatabaseSecret-d4e5f6",
// "Description":"Another secret created for a different database",
// "LastChangedDate":1.523482025685E9,
// "Name":"AnotherDatabaseSecret",
// "SecretVersionsToStages":{
// "EXAMPLE3-90ab-cdef-fedc-ba987EXAMPLE":["AWSCURRENT"]
// }
// }
// ]
// }
Get Create (RefClass(cComChilkatJsonObject)) To hoJson2
If (Not(IsComObjectCreated(hoJson2))) Begin
Send CreateComObject of hoJson2
End
Get Create (RefClass(cComChilkatJsonArray)) To hoJarr
If (Not(IsComObjectCreated(hoJarr))) Begin
Send CreateComObject of hoJarr
End
Move 0 To i
Get ComSizeOfArray Of hoJResp "SecretList" To iCount_i
While (i < iCount_i)
Set ComI Of hoJResp To i
Get ComStringOf Of hoJResp "SecretList[i].ARN" To sARN
Get ComStringOf Of hoJResp "SecretList[i].Description" To sDescription
Get ComStringOf Of hoJResp "SecretList[i].LastChangedDate" To sLastChangedDate
Get ComStringOf Of hoJResp "SecretList[i].Name" To sName
Get pvComObject of hoJson2 to vJson2
Get ComObjectOf2 Of hoJResp "SecretList[i].SecretVersionsToStages" vJson2 To iSuccess
Get ComSize Of hoJson2 To iCount
Move 0 To j
While (j < iCount)
Get ComNameAt Of hoJson2 j To sVersionName
Get pvComObject of hoJarr to vJarr
Get ComArrayOf2 Of hoJson2 sVersionName vJarr To iSuccess
Get ComStringAt Of hoJarr 0 To sStage
Showln "versionName = " sVersionName
Showln "stage = " sStage
Move (j + 1) To j
Loop
Move (i + 1) To i
Loop
End_Procedure