Sample code for 30+ languages & platforms
VB.NET

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 VB.NET Downloads

VB.NET
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 New Chilkat.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 Integer = 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 New Chilkat.AuthAws
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 New Chilkat.JsonObject

json.UpdateString("SecretId","MyTestDatabaseSecret2")

rest.AddHeader("Content-Type","application/x-amz-json-1.1")
rest.AddHeader("X-Amz-Target","secretsmanager.GetSecretValue")

Dim sbRequestBody As New Chilkat.StringBuilder
json.EmitSb(sbRequestBody)
Dim sbResponseBody As New Chilkat.StringBuilder
success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody)
If (success <> True) Then
    Debug.WriteLine(rest.LastErrorText)
    Exit Sub
End If

Dim respStatusCode As Integer = rest.ResponseStatusCode
Debug.WriteLine("response status code = " & respStatusCode)

Dim jResp As New Chilkat.JsonObject
jResp.EmitCompact = False
jResp.LoadSb(sbResponseBody)

If (respStatusCode >= 400) Then
    Debug.WriteLine("Response Status Code = " & respStatusCode)
    Debug.WriteLine("Response Header:")
    Debug.WriteLine(rest.ResponseHeader)
    Debug.WriteLine("Response Body:")
    Debug.WriteLine(jResp.Emit())
    Exit Sub
End If


Debug.WriteLine("Response Body:")
Debug.WriteLine(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")