13.9.2021

AWS Secrets Manager

Credentials, wie Access Tokens, DB-Zugriffdaten oder andere lassen sich mit dem AWS Secrets Manager speichern, damit sie nicht in Lambda Funktionen offen in den Environment Variablen liegen.

var AWS = require('aws-sdk'),
    region = "eu-central-1",
    secretName = "gitlabAPI/privateToken/jzbick",
    secret,
    decodedBinarySecret;

var client = new AWS.SecretsManager({
    region: region
});

client.getSecretValue({SecretId: secretName}, function(err, data) {
    if (err) {
        throw err;
    }
    else {
        if ('SecretString' in data) {
            secret = data.SecretString;
        } else {
            let buff = new Buffer(data.SecretBinary, 'base64');
            decodedBinarySecret = buff.toString('ascii');
        }
    }
    
    // Your code goes here. 
});

gekürztes Code Beispiel; Volle Länge findet man auf der jeweiligen Secrets Seite

Beispiel data Objekt:

{
  ARN: 'arn:aws:secretsmanager:eu-central-1:565575105323:secret:gitlabAPI/privateToken/jzbick-XwWr5W',
  Name: 'gitlabAPI/privateToken/jzbick',
  VersionId: '30262c69-1f91-4c26-9131-67b1de03eebd',
  SecretString: '{"PRIVATE_TOKEN":"jHpce7LGBahALXd4mRcp"}',
  VersionStages: [ 'AWSCURRENT' ],
  CreatedDate: 2020-09-24T09:14:34.864Z
}
Jonathan

Dualer Student

Zur Übersicht

Standort Hannover

newcubator GmbH
Bödekerstraße 22
30161 Hannover

Standort Dortmund

newcubator GmbH
Westenhellweg 85-89
44137 Dortmund