我构建了一个连接到Postgres的小圣杯应用程序,可以执行一些插入操作。在pg_hba.conf文件(数据库在另一台服务器上)中,我只允许某些IP连接。几乎每个来自lambda的请求都使用不同的IP。
这是我的圣杯应用
import psycopg2.extras
from psycopg2.extras import execute_values
from chalice import Chalice, Response
app = Chalice(app_name='hello_world')
app.debug = True
conn = psycopg2.connect(user='user',
password='Password123',
host='123.12.12.123',
port=5432,
database='test_db')
cursor = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
@app.route("/")
def main_page():
cursor.execute("SELECT COUNT(*) FROM main WHERE status=1")
g = dict(cursor.fetchone())
return {"count": g['count']}当我在127.0.0.1上部署本地时,它可以工作,有没有办法在连接到数据库时管理lambda IP?
我愿意接受任何建议。
发布于 2021-11-03 15:44:30
创建您的私有网络、内网、公网子网、安全组等。
注意:这是具有挑战性的部分。
教程:https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html
然后将security-groups-id和subnets复制到chalice配置:.chalice/config.json
{
"version": "2.0",
"app_name": "XYZ",
"stages": {
"prod": {
"security_group_ids": [
"sg-YYYYYYYY"
],
"subnet_ids": [
"subnet-XXXXXXXX"
]
}
}
}https://stackoverflow.com/questions/68258483
复制相似问题