in provisioning_lambda/lambda_function.py [0:0]
def get_request_body(event):
body = json.loads(event.get('body', '{}'))
# check DSN
if not body.get('DSN'):
raise InvalidRequestException('Missing required field: DSN')
elif len(body['DSN']) > 115:
raise InvalidRequestException('The DSN must be between 1 and 115 long.')
else:
pattern = re.compile('[^\\w\\-]')
if pattern.match(body['DSN']):
raise InvalidRequestException('DSN Must contain only alphanumeric characters and/or the following: -_')
# check public key
if not body.get('publicKey'):
raise InvalidRequestException('Missing required field: publicKey')
else:
try:
body['publicKey'] = X25519PublicKey.from_public_bytes(
base64.b64decode(body['publicKey'])
)
except Exception:
raise InvalidRequestException('Invalid public key')
return body