B4X
B4X
AWS Secrets Manager - Get Secret Value
See more AWS Secrets Manager Examples
Retrieves the contents of the encrypted fields SecretString or SecretBinary from the specified version of a secret, whichever contains content.Chilkat B4X Downloads
Dim success As Boolean = False
' 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.GetSecretValue
' 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>
'
' {
' "SecretId": "MyTestDatabaseSecret",
' }
Dim rest As ChilkatRest
rest.Initialize("rest")
' Connect to the Amazon AWS REST server.
' such as https://secretsmanager.us-west-2.amazonaws.com/
Dim bTls As Boolean = True
Dim port As Int = 443
Dim bAutoReconnect As Boolean = True
success = rest.Connect("secretsmanager.us-west-2.amazonaws.com", port, bTls, bAutoReconnect)
' Provide AWS credentials for the REST call.
Dim authAws As ChilkatAuthAws
authAws.Initialize
authAws.AccessKey = "AWS_ACCESS_KEY"
authAws.SecretKey = "AWS_SECRET_KEY"
' the region should match our URL above..
authAws.Region = "us-west-2"
authAws.ServiceName = "secretsmanager"
rest.SetAuthAws(authAws)
' Use this online tool to generate code from sample JSON:
' Generate Code to Create JSON
Dim json As ChilkatJsonObject
json.Initialize
json.UpdateString("SecretId", "MyTestDatabaseSecret2")
rest.AddHeader("Content-Type", "application/x-amz-json-1.1")
rest.AddHeader("X-Amz-Target", "secretsmanager.GetSecretValue")
Dim sbRequestBody As ChilkatStringBuilder
sbRequestBody.Initialize
json.EmitSb(sbRequestBody)
Dim sbResponseBody As ChilkatStringBuilder
sbResponseBody.Initialize
success = rest.FullRequestSb("POST", "/", sbRequestBody, sbResponseBody)
If success <> True Then
Log(rest.LastErrorText)
Return
End If
Dim respStatusCode As Int = rest.ResponseStatusCode
Log("response status code = " & respStatusCode)
Dim jResp As ChilkatJsonObject
jResp.Initialize
jResp.EmitCompact = False
jResp.LoadSb(sbResponseBody)
If respStatusCode >= 400 Then
Log("Response Status Code = " & respStatusCode)
Log("Response Header:")
Log(rest.ResponseHeader)
Log("Response Body:")
Log(jResp.Emit)
Return
End If
Log("Response Body:")
Log(jResp.Emit)
' Sample response body:
' {
' "ARN":"arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3",
' "CreatedDate":1.523477145713E9,
' "Name":"MyTestDatabaseSecret",
' "SecretString":"{\n \"username\":\"david\",\n \"password\":\"BnQw&XDWgaEeT9XGTT29\"\n}\n",
' "VersionId":"EXAMPLE1-90ab-cdef-fedc-ba987SECRET1"
' }
' Use this online tool to generate parsing code from sample JSON:
' Generate Parsing Code from JSON
Dim ARN As String = jResp.StringOf("ARN")
Dim CreatedDate As String = jResp.StringOf("CreatedDate")
Dim Name As String = jResp.StringOf("Name")
Dim SecretString As String = jResp.StringOf("SecretString")
Dim VersionId As String = jResp.StringOf("VersionId")