auths
objectreturn
or this.key = 'value'
, pass input data to your code viaparams
, and maintain state across executions with$checkpoint.async
(event, steps, params) => {
}
if (!event.headers.authorization) {
reject()
$end("No Authorization header present")
}
// The data in the Authorization header looks like this:
// Basic <base64-encoded-username-and-password>
// Parse and decode it
const authData = Buffer.from(event.headers.authorization.split(" ")[1] || "", 'base64').toString()
if (!authData) {
reject()
$end("No data in Authorization header")
}
// Validate the username and password with those configured in params
const [user, pass] = authData.split(":")
if (user !== params.user || pass !== params.password) {
reject()
$end("Username / password don't match")
}
// If we've reached this point, we've validated the Authorization header!
$respond({
status: 200,
body: "Successfully authenticated"
})
function reject() {
$respond({
status: 401,
})
}