Skip to content

Commit 93d5fca

Browse files
hasankhanahadith
authored andcommitted
Verify the aws api gateway secret
1 parent be55dcc commit 93d5fca

File tree

3 files changed

+9
-1
lines changed

3 files changed

+9
-1
lines changed

.env.local.sample

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@ MYSQL_DATABASE=hadithdb
66

77
FLASK_ENV=development
88
FLASK_APP=main.py
9+
10+
AWS_SECRET=secret

config.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,6 @@
44
load_dotenv('.env.local')
55

66
class Config(object):
7+
AWS_SECRET = '{AWS_SECRET}'.format(**os.environ)
78
SQLALCHEMY_TRACK_MODIFICATIONS = False
89
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{MYSQL_USER}:{MYSQL_PASSWORD}@{MYSQL_HOST}/{MYSQL_DATABASE}'.format(**os.environ)

main.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import functools
2-
from flask import Flask, jsonify, request
2+
from flask import Flask, jsonify, request, abort
33
from flask_swagger import swagger
44
from sqlalchemy import func
55

@@ -29,6 +29,11 @@ def decorated_function(*args, **kwargs):
2929
def home():
3030
return "<h1>Welcome to sunnah.com API.</p>"
3131

32+
@app.before_request
33+
def verify_secret():
34+
if request.headers.get('x-aws-secret') != app.config['AWS_SECRET']:
35+
abort(401)
36+
3237
@app.route("/v1/spec")
3338
def spec():
3439
swag = swagger(app)

0 commit comments

Comments
 (0)